Automator:“运行Shell脚本”因为缺少“on”命令而抛出错误


1

OSX 10.11.4在这里。

我正在尝试创建一个与热键一起使用的工作流,以运行一个简单的shell脚本。

创建者:Automator - >新服务 - >实用程序 - >运行Shell Script,然后在'Finder'中设置为'no input',shell设置为“/ bin / bash”。

对于一个简单的脚本,比如,一个只包含“ls”的脚本,它可以工作。

但到目前为止,我只是为我想要运行的脚本收到错误,其中包括“运行中”的调用,这似乎会导致问题。调试一下后,我可以把它归结为:

on run {input, parameters}

end run

导致错误:

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

可能与我想到的缺失路径有关,所以我已经尝试过这个,例如通过增加:

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

要么:

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

如建议 这里 。没有帮助。

另请注意:我安装了Anaconda,看起来它改变了.bash_profile中的路径。然后,我甚至不确定automator调用的bash环境是否会查看.bash_profile。

任何想法接下来要尝试什么?

Answers:


5

on run {input, parameters} 是AppleScript语法,而不是有效的shell命令。如果要在服务中执行AppleScript,请使用“运行AppleScript”操作而不是“运行Shell脚本”。


2
嗯......这值得一个“D'哦!”。谢谢!标记为回答。
Bert Zangle
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.