Linux crontab 計劃任務使用說明
阿新 • • 發佈:2020-12-25
命令使用
[[email protected] ~]# crontab [-u username] [-l|-e|-r]
選項與引數:
-u :只有 root 才能進行這個操作,亦即幫其他使用者建立/移除 crontab 工作排程;
-e :編輯 crontab 的工作內容;
-l :查閱 crontab 的工作內容;
-r :移除所有的 crontab 的工作內容;
crontab語法格式
- Minutes Hours DayofMonth Month DayofWeek
語法說明:
欄位 | 允許值 | 允許的特殊字元 |
---|---|---|
分(Minutes) | 0~59的整數 | , - * / 四個字元 |
小時(Hours) | 0~23的整數 | , - * / 四個字元 |
日期(DayofMonth) | 1~31的整數 | ,- * ? / L W C 八個字元 |
月份(Month) | 1~12的整數 | , - * / 四個字元 |
星期(DayofWeek) | 0~7的整數(0&7=SUN) | , - * ? / L C # 八個字元 |
特殊字元說明:
*:表示匹配該域的任意值。假如在Minutes域使用*, 即表示每分鐘都會觸發事件。 ,:表示列舉值。例如:在Minutes域使用5,20,則意味著在5和20分每分鐘觸發一次。 -:表示範圍。例如在Minutes域使用5-20,表示從5分到20分鐘每分鐘觸發一次。 /n:表示從起始時間後每隔n個單位時間觸發一次。例如在Minutes域使用5/20,則表示5分鐘觸發一次,而25、45等分別觸發一次。
可以分別以周或者是日月為單位作為迴圈,但不可使用「幾月幾號且為星期幾」的命令模式;如果周和日月同時設定,則兩個單位之間是或關係。
crontab的使用限制:
- /etc/cron.allow:將可以使用 crontab 的帳號寫入其中,若不在這個檔案內的使用者則不可使用 crontab;
- /etc/cron.deny:將不可以使用 crontab 的帳號寫入其中,若未記錄到這個檔案當中的使用者,就可以使用 crontab 。
這兩個檔案只要保留一個即可, 一般來說,系統預設是保留 /etc/cron.deny。
使用示例:
* * * * * /home/bin/script.sh: 每分鐘執行。 0 * * * * /home/bin/script.sh: 每小時零分執行。 3,15 * * * * /home/bin/script.sh: 每小時3分和15分執行。 0 0 * * * /home/bin/script.sh: 每天零點執行。 0 0 */2 * * /home/bin/script.sh: 每隔兩天零點執行。 0 9,18 * * * /home/bin/script.sh: 在每天的9點和18點執行。 0 9-18 * * * /home/bin/script.sh: 在9點到18點的每個小時執行。 0 9-18 * * 1-5 /home/bin/script.sh: 週一到週五的9點到18點每小時執行。 */10 * * * * /home/bin/script.sh: 每10分鐘執行。