LaunchAgent不运行shell脚本

oknrviil  于 2022-12-13  发布在  Shell
关注(0)|答案(2)|浏览(178)

在 Catalina 之前的macOS下,我有一个LaunchAgent,每天运行一个shell脚本。升级并切换到zsh后,它不工作。我检查过的事情:

  1. shebang切换到zsh
    1.可以从命令行手动执行shell脚本
  2. sh在“系统偏好设置”〉“安全与隐私”下具有完全磁盘访问权限
  3. plist位于~/Library/LaunchAgents中并自动启动,因此可以使用chown
    我添加了一个错误检查到我的plist:
<key>StandardOutPath</key>
<string>/path/to/file.out</string>
<key>StandardErrorPath</key>
<string>/path/to/file.err</string>

这样就得到file.err
zsh: can't open input file: /path/to/script.sh
file.out为空。我的脚本具有权限-rwxr-xr-x
我错过了什么?

ttcibm8c

ttcibm8c1#

根据TheDarkKnight的建议,我为zsh添加了完全磁盘访问权限-没有成功。解决方案是将shebang切换回/bin/bash,并为bash提供完全磁盘访问权限。脚本现在运行良好。

mwecs4sa

mwecs4sa2#

我在Monterey上遇到了与@quantixed相同的问题,但对我来说,像@TheDarkKnight建议的那样,将/bin/zsh拖到全磁盘访问列表中,使launchctl像它应该的那样运行脚本。

相关问题