Automator: "Ejecutar el script de shell" genera un error porque falta el comando "on"

1

OSX 10.11.4 aquí.

Estoy tratando de crear un flujo de trabajo para usar con una tecla de acceso rápido, para ejecutar un script de shell simple.

Creado a través de: Automator - > Nuevo servicio - > Utilidades - > Ejecute el script de shell, luego establezca 'sin entrada' en 'Finder', y el conjunto de shell en "/ bin / bash".

Para un script trivial, digamos, uno que contiene nada más que "ls", funciona.

Pero solo estoy obteniendo errores hasta ahora para el script que realmente quiero ejecutar, que incluye una llamada de "on run", que parece causar problemas. Después de depurar un poco, puedo reducirlo a esto:

on run {input, parameters}

end run

da como resultado un error:

Run Shell script failed - 1 error
-: line 2: on: command not found

Podría tener algo que ver con un camino perdido que pensé, así que ya intenté trabajar en eso, por ejemplo. añadiendo:

PATH=/bin:/usr/bin:/sbin:/usr/sbin export PATH

o:

PATH=/usr/bin:/usr/local/bin export PATH

como se sugiere here . No ayudó.

También tenga en cuenta: tengo instalado Anaconda, que parece que cambió la ruta en .bash_profile. Por otra parte, ni siquiera estoy seguro de si el entorno de bash invocado por automator se ve en .bash_profile.

¿Alguna idea sobre qué intentar a continuación?

    
pregunta Bert Zangle 30.04.2016 - 18:47

1 respuesta

5

on run {input, parameters} es sintaxis de AppleScript, no es un comando de shell válido. Si desea ejecutar AppleScript en el servicio, use la acción Ejecutar AppleScript en lugar de Ejecutar el script de shell.

    
respondido por el Gordon Davisson 30.04.2016 - 19:30

Lea otras preguntas en las etiquetas