天天看點

crontab的文法規則格式(每分鐘、每小時、每天、每周、每月、每年定時執行 規則)

crontab的文法規則格式:

代表意義

分鐘

小時

日期

月份

周 

 指令

數字範圍

0~59

0~23

1~31

1~12

0~7

需要執行的指令

周的數字為 0 或 7 時,都代表“星期天”的意思。

另外,還有一些輔助的字元,大概有下面這些:

特殊字元 代表意義

*(星号) 代表任何時刻都接受的意思。舉例來說,0 12 * * * command 日、月、周都是*,就代表着不論何月、何日的禮拜幾的12:00都執行後續指令的意思。

,(逗号) 代表分隔時段的意思。舉例來說,如果要執行的工作是3:00與6:00時,就會是:0 3,6 * * * command時間還是有五列,不過第二列是 3,6 ,代表3與6都适用

-(減号) 代表一段時間範圍内,舉例來說,8點到12點之間的每小時的20分都進行一項工作:20 8-12 * * * command仔細看到第二列變成8-12.代表 8,9,10,11,12 都适用的意思

/n(斜線) 那個n代表數字,即是每隔n機關間隔的意思,例如每五分鐘進行一次,則:*/5 * * * * command用*與/5來搭配,也可以寫成0-59/5,意思相同

1.每分鐘定時執行一次規則:

每1分鐘執行: */1 * * * *或者* * * * *

每5分鐘執行: */5 * * * *

2.每小時定時執行一次規則:

每小時執行: 0 * * * *或者0 */1 * * *

每天上午7點執行:0 7 * * *

每天上午7點10分執行:10 7 * * *

3.每天定時執行一次規則:

每天執行 0 0 * * *

4.每周定時執行一次規則:

每周執行 0 0 * * 0

5.每月定時執行一次規則:

每月執行 0 0 1 * *

6.每年定時執行一次規則:

每年執行 0 0 1 1 *

7.其他例子

5 * * * * 指定每小時的第5分鐘執行一次ls指令

30 5 * * * ls 指定每天的 5:30 執行ls指令

30 7 8 * * ls 指定每月8号的7:30分執行ls指令

30 5 8 6 * ls 指定每年的6月8日5:30執行ls指令

30 6 * * 0 ls 指定每星期日的6:30執行ls指令[注:0表示星期天,1表示星期1,以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。]

30 3 10,20 * * ls 每月10号及20号的3:30執行ls指令[注:“,”用來連接配接多個不連續的時段]

25 8-11 * * * ls 每天8-11點的第25分鐘執行ls指令[注:“-”用來連接配接連續的時段]

*/15 * * * * ls 每15分鐘執行一次ls指令 [即每個小時的第0 15 30 45 60分鐘執行ls指令 ]

30 6 */10 * * ls 每個月中,每隔10天6:30執行一次ls指令[即每月的1、11、21、31日是的6:30執行一次ls指令。 ]

繼續閱讀