如何知道cronjob是否失败(运行python命令)

时间:2011-05-10 22:25:53

标签: python ubuntu cron crontab

当我运行此命令时,输出消息将保存到ok.txt:

 /home/admin/virtualenvs/x.com/bin/python /home/admin/www/x.com/x/app/manage.py help | tee ok.txt

我有这个cronjob:

* * * * * /home/admin/virtualenvs/x.com/bin/python /home/admin/www/x.com/x/app/manage.py help | tee ok.txt

但没有任何内容保存到ok.txt

当我看到cron日志时

> sudo grep CRON /var/log/syslog

May 10 22:16:01 localhost CRON[23397]: (admin) CMD (/home/admin/virtualenvs/x.com/bin/python /home/admin/www/x.com/x/app/manage.py help | tee ok.txt)

这里没有提示,我做错了什么?提前谢谢。

2 个答案:

答案 0 :(得分:1)

试试这个:

* * * * * /home/admin/virtualenvs/x.com/bin/python /home/admin/www/x.com/x/app/manage.py help > /tmp/ok.txt 2&>1

它应该将所有输出(stderr和stdout)放入ok.txt文件

答案 1 :(得分:0)

首先我看到你没有正确的crontab语法:

Example of job definition:
.---------------- minute (0 - 59)
|  .------------- hour (0 - 23)
|  |  .---------- day of month (1 - 31)
|  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
|  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
|  |  |  |  |
*  *  *  *  * user-name command to be executed

您缺少用户名。

第二件事。不要假设您的.bashrc已加载。在cron中,您只需获得在文件顶部定义的环境。因此,如果您的脚本使用的是您在bashrc中定义的内容,那么可能是因为它无法正确执行。