All*_*mas 3 wget cron osx-lion macos
我想在运行 Lion 的 Macbook Pro 上设置一个 crontab。我照常运行,crontab -e并提供一个快速的工作,看看是否一切正常---
*/10 * * * * wget -O - -q -t 1 http://site.local/cron.php
Run Code Online (Sandbox Code Playgroud)
10 分钟后,我看到系统收到了一些“邮件”,内容为 ---
/bin/sh: wget: command not found
Run Code Online (Sandbox Code Playgroud)
我确实安装了 wget,因为我可以从命令行运行程序
我该如何解决这个错误?我的 crontab 还是.bash_profile需要 shebang?
小智 10
当它作为 cron 作业运行时,这可能与您的环境不同有关(即PATH环境变量与您从 bash 终端使用的环境变量不同)。
在您的 bash 终端中,使用which来确定wget正在使用哪个:
laptop [ ~ ]: which wget
/opt/local/bin/wget
Run Code Online (Sandbox Code Playgroud)
然后在 cron 作业中使用完整路径:
*/10 * * * * /opt/local/bin/wget -O - -q -t 1 http://site.local/cron.php
Run Code Online (Sandbox Code Playgroud)
对于 cron 作业,我通常让它运行 bash 脚本,而不是直接在 crontab 中指定命令。调试起来更容易一些,并使 crontab 更干净一些。
| 归档时间: |
|
| 查看次数: |
16365 次 |
| 最近记录: |