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指令。 ]