Bash脚本可在终端中使用,但在Applescript中会显示“ python3:找不到命令”

时间:2019-09-18 02:30:46

标签: bash macos shell terminal applescript

已解决:查看答复中的解决方案

我有一个bash脚本,如下所示:

#!/bin/bash
python3 /Users/me/path/to/my/file.py
python3 /Users/me/path/to/my/file2.py
Rscript /Users/me/path/to/my/rfile.R
python3 /Users/me/path/to/my/file.py

当我从终端使用命令执行它

bash /Users/me/path/to/my/shellscript.sh

它执行得很好。但是,我希望能够从Keyboard Maestro或AppleScript运行它。在AppleScript中,当我运行时

do shell script "bash /Users/me/path/to/my/shellscript.sh"

我收到以下错误消息:

error "/Users/me/path/to/my/shellscript.sh: line 2: python3: command not found
/Users/me/path/to/my/shellscript.sh: line 3: python3: command not found
/Users/me/path/to/my/shellscript.sh: line 4: Rscript: command not found
/Users/me/path/to/my/shellscript.sh: line 5: python3: command not found" number 127

如果在Keyboard Maestro中运行等效命令,则会收到相同的错误消息。我曾尝试将python3更改为python,但是无论如何还是失败了,因为它在Python 2中运行文件(尽管Python文件指定了Python 3,但使用Rscript命令会当然仍然会引发错误。

导致Shell脚本在Keyboard Maestro和AppleScript中失败但在Terminal中失败的环境之间有什么区别?

1 个答案:

答案 0 :(得分:0)

通过将命令更改为PATH=$PATH:/usr/local/bin; bash /Users/me/path/to/my/shellscript.sh使它起作用。