在非高峰时段退缩的cronjob

时间:2013-03-21 02:30:44

标签: cron crontab

我有一个php脚本,crontab每30分钟执行一次,在非高峰时段大约凌晨2点到7点我没有太多流量,所以我希望在这几个小时内不运行脚本。

我不确定如何制作能够做到这一点的cronjob,因为我觉得很难测试。

我目前的cronjob看起来像这样

*/30 * * * *            /usr/bin/php    /var/www/update/inv.php

2 个答案:

答案 0 :(得分:3)

*/30 0-1,8-23 * * * /usr/bin/php /var/www/update/inv.php

范围是包容性的,因此0-1将执行00:30,01:30,然后8-23​​将执行0830至2330

参考:http://team.macnn.com/drafts/crontab_defs.html

答案 1 :(得分:3)

您可以限制希望作业运行的小时数。

*/30 0,1,7-23 * * *            /usr/bin/php    /var/www/update/inv.php

时间将是每30分钟一次,直到0130.它不会在0200运行。下一次运行将在0700,然后每30分钟。

这里有关于如何设置cron的相当不错的文章:

http://en.wikipedia.org/wiki/Cron