Estoy realizando un flujo de trabajo de Automator que utiliza la acción del script de shell para procesar una selección de imágenes con el comando compuesto imagemagick. Solo estoy teniendo problemas para ponerlo en marcha. De acuerdo con los resultados que obtengo cuando ejecuto el flujo de trabajo, todo está funcionando, sin embargo, sé que no se debe al hecho de que los cambios que esperaría ver en la carpeta de imágenes no están presentes. Sé que el comando imagemagick que estoy usando es correcto, ya que funciona correctamente desde la consola. (Repetí el comando compuesto a la salida y lo copié en una sesión de Terminal. Corrí como un hechizo). Por cierto: el flujo de trabajo para procesar un fundido en una película de stop motion que hice. Sí, sé que podría usar herramientas de video para lograr lo mismo, pero a las que tengo acceso para arruinar la calidad de imagen en la salida.
Aquí está el script
imagesCount=$#
rate=$(echo "scale=2; 100/$imagesCount"|bc)
percentage=$rate
for f in "$@"; do
fileName=${f%.*}
composite -blend "$percentage" -size 1280x720 "$f" xc:black -alpha Set "$fileName-1.jpg"
percentage=$(echo "scale=2; $percentage+$rate"|bc)
done
Al principio pensé que la causa del problema podría ser espacios en las rutas, pero eliminé esta posibilidad cambiando los archivos a una ruta sin espacios, pero eso no tuvo ningún efecto.
Estoy casi seguro de que el problema está relacionado con algo en el comando bash, pero no conozco a bash, esta es la primera vez que escribo scripts de comandos de bash, pero tengo muchos conocimientos de scripts de consola de Windows y No tengo problemas para que esto funcione allí.
Si el error en la secuencia de comandos no es lo suficientemente obvio como para detectarlo, ¿alguien propondría un método para depurar esto para poder averiguar por qué las imágenes no se procesan a pesar de que la secuencia de comandos se ejecuta sin errores?