2013-05-21 236 views
0

我有以下的cronjob(crontab中)在Linux AMI在Amazon EC2服务器上运行:crontab的继续运行

*/20 8-22 * * * php -q /var/www/html/xxx.php 

不幸的是,脚本执行保持每20分钟后23.00小时。有人能解释我做错了什么吗?

回答

1

你的语法没有问题。正如你写的那样,这项工作应该每天执行45次,第一次是在8:00,最后是在22:40。

我有一个预感,问题是与时区相关的:当工作在23:00运行时,cron认为当地时间是22:00。如果我是对的,那么这项工作将不会在8:00运行,但将在9:00或稍后的时间开始。

您可能能够通过设置工作怎么样

* * * * * date >> /tmp/cron.date.test 

证实了这一点,然后等待一分钟,看看是否在文件中的日期与您的这是什么时候的想法一致。这不是一个完美的测试,因为date将独立于cron独立确定时区,但它将从cron继承其环境,因此希望它们能够相互认同。

+0

谢谢!我检查了服务器上的日期,确实不同。 – user2407314