En Automator, cómo obtener el contenido de la carpeta después de una acción "Ejecutar shell script"

0

Tengo una aplicación de Automator donde me gustaría arrastrar una carpeta y hacer que cree un duplicado (hermano) de esa carpeta con los archivos del duplicado renombrados. Por ejemplo, comenzando con lo siguiente:

root
 +--svgs
     |--icons_a.svg
     +--icons_b.svg

Al arrastrar el directorio svgs a la aplicación, me gustaría terminar con lo siguiente:

root
 |--svgs
 |   |--icons_a.svg
 |   +--icons_b.svg
 +--renamed-svgs
     |--a.svg
     +--b.svg

He intentado lo siguiente:

Peroarrojalosiguiente:

Noestoysegurodecómodepurarelerror,pero¿cómopuedoobtenerlaprimeraacción"Ejecutar Shell Script" para devolver la carpeta "renamed-svgs" o el contenido de esa carpeta?

¿O hay una mejor manera de hacer todo esto?

    
pregunta robertwbradford 08.04.2016 - 00:35

2 respuestas

1

En general, es aconsejable incluir una variable entre comillas dobles.

Use el comando echo para devolver la carpeta " renamed-svgs "

rm -rf "$@"/../renamed-svgs
cp -rf "$@"/ "$@"/../renamed-svgs
echo "$@"/../renamed-svgs/

O use el comando find para devolver archivos cuyo nombre comience con icons_

rm -rf "$@"/../renamed-svgs
cp -rf "$@"/ "$@"/../renamed-svgs
find "$@/../renamed-svgs/" -type f -maxdepth 1 -iname 'icons_*' -print
    
respondido por el jackjr300 08.04.2016 - 21:10
0

Este error es exactamente lo que ocurrirá con los scripts de bash si la aplicación con la que se está comunicando no es una Aplicación en ejecución cuando está interactuada. En cuanto a una mejor manera de realizar la tarea, no, automator es impresionante.

  • Lo sé, no es una respuesta completa, pero no puedo comentar y mi afirmación es verdadera.
respondido por el Jahh 08.04.2016 - 04:02

Lea otras preguntas en las etiquetas