2013-03-21 26 views
1

我有一個php腳本,其中crontab每30分鐘執行一次,在2-7am左右的非高峯期間我沒有得到太多的流量,所以我希望在運行期間不要運行腳本這幾個小時。在非高峯時段回退的cronjob

我不知道如何使cronjob這樣做,因爲我會發現它很難測試。

的的cronjob我目前所面對的是這樣的

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

回答

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

+0

正是我一直在尋找,謝謝 – 2013-03-21 02:47:21

+1

30應該是*/30 – 2013-03-21 02:49:12

+0

OK,30部作品我係統,但我已經改變它建議 – uNople 2013-03-21 03:14:06

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

+0

不應該0,1是0-1嗎? – 2013-03-21 02:49:59

+0

它們是等效的:「0和1」=「範圍在0和1之間」 – 2013-03-21 02:56:27

+0

感謝您確認「0-1,8-23」能夠正常工作。 – 2015-08-19 20:50:11

相關問題