Automator: "Esegui Shell Script" genera errore a causa della mancanza del comando "on"

1

OSX 10.11.4 qui.

Sto provando a creare un flusso di lavoro da utilizzare con un tasto di scelta rapida, per eseguire un semplice script di shell.

Creato tramite: Automator - > Nuovo servizio - > Utilità - > Esegui Shell Script, quindi imposta "nessun input" in "Finder" e shell impostato su "/ bin / bash".

Per uno script banale, per esempio, uno che contiene nient'altro che "ls", funziona.

Ma sto ottenendo errori fino ad ora solo per lo script che voglio effettivamente eseguire, che include una chiamata di "on run", che sembra causare problemi. Dopo il debug di un po ', posso portarlo a questo:

on run {input, parameters}

end run

risultati in errore:

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

Potrei avere qualcosa a che fare con un percorso mancante, ho pensato, quindi ho già provato a lavorarci su, ad es. aggiungendo:

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

o

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

come suggerito here . Non ha aiutato.

Nota anche: ho installato Anaconda, che sembra abbia cambiato il percorso in .bash_profile. Quindi, ancora una volta, non sono nemmeno sicuro se l'ambiente bash richiamato da automator guardi .bash_profile.

Qualche idea su cosa provare dopo?

    
posta Bert Zangle 30.04.2016 - 18:47
fonte

1 risposta

5

on run {input, parameters} è la sintassi di AppleScript, non un comando di shell valido. Se si desidera eseguire AppleScript nel servizio, utilizzare l'azione Esegui AppleScript anziché Esegui script shell.

    
risposta data 30.04.2016 - 19:30
fonte

Leggi altre domande sui tag