为什么这个cron不工作?

我做“crontab -e”并添加以下行:

0 9 * * * /usr/bin/python /home/g1/g1/utils/statsEmail.py > /home/g1/log/statsemail.log 

但它不工作! 为什么? 脚本本身的作品。 另外,日志是空的。

我在crontab中的其他命令是这样的,它的工作原理:

 0 9 * * * /usr/bin/python /home/g1/g1/sphinx/updateall.py > /home/g1/log/updateall.log 

您可以将MAILTO = youremail添加到crontab以获取关于失败的详细信息并解决此问题。

编辑:可能你的cron不能运行你的脚本,因为它不被允许这样做

您正在将STDOUT写入日志文件,但也应将STDERR传送到相同的日志文件。 现在,您可能不会看到此脚本生成的任何错误消息。

您的脚本可能由于某些简单的原因而失败,例如执行cronjob的用户没有执行脚本的权限。 另外,请记住,cron在一个非常简单的环境中执行命令,并且可能会与常规的交互式shell环境非常不同。

将您的脚本更改为:

 0 9 * * * /usr/bin/python /home/g1/g1/sphinx/updateall.py > /home/g1/log/updateall.log 2>&1 

什么updateall.log现在显示你?

另外,cron通常会将一些信息logging到日志文件中。 /var/log/cron.log对你的cronjob说了些什么?