【发布时间】:2013-07-16 04:30:56
【问题描述】:
我正在尝试让一个 cronjob 运行一个基本的 Python 脚本作为概念验证练习。 Python脚本如下:
#!/usr/bin/python
with open('realfile','a+') as f:
f.write('testwrite\n')
我的脚本(连同 'realfile' 文件)位于我的主目录(即 $HOME/Documents)下的一个 'Documents' 目录中。
我的crontab如下:
*/1 * * * * /$HOME/Documents/crontest.py
由于某种原因,crontab 不会按应有的每分钟执行脚本。该脚本运行良好,因为我从命令行手动运行它(使用 ./crontest.py)。此外,当脚本位于主目录中时,crontab 工作得非常好,而 crontab 很简单:
*/1 * * * * /$HOME/crontest.py
我已经使用“locate crontest.py”检查了“crontest.py”的位置,我得到了以下两个位置:
/home/meric/crontest.py
/usr/bin/crontest.py
我尝试在我的 crontab 中设置这两个路径,但作业仍然无法运行。
可能是什么问题?感谢您的帮助!
【问题讨论】:
-
在 crontab 条目和脚本中使用完全展开的绝对路径,看看是否有帮助。
-
另外,如果您的电子邮件设置(nullmailer?)配置正确,您应该会收到一封包含错误详细信息的电子邮件。