使用 crontab
Usage: crontab [-u user] [-e|-l|-r]
Crontab 的格式說明如下:
* 逗號(‘,’) 指定列表值。如: “1,3,4,7,8″
* 中橫線(‘-’) 指定范圍值 如 “1-6″, 代表 “1,2,3,4,5,6″
* 星號 (‘*’) 代表所有可能的值
*/15 表示每 15 分鐘執行一次
# Use the hash sign to prefix a comment
# +—————- minute (0 – 59)
# | ?+————- hour (0 – 23)
# | ?| ?+———- day of month (1 – 31)
# | ?| ?| ?+——- month (1 – 12)
# | ?| ?| ?| ?+—- day of week (0 – 7) (Sunday=0 or 7)
# | ?| ?| ?| ?|
# * ?* ?* ?* ?* ?command to be executed
格式按照如下圖所示。?
技術|Linux/UNIX 定時任務 cron 詳解
注意事項:
1)腳本中涉及文件路徑時寫全局路徑;
2)腳本執行要用到java或其他環境變量時,通過source命令引入環境變量
3)當手動執行腳本OK,但是crontab死活不執行時。這時必須大膽懷疑是環境變量惹的禍,并可以嘗試在crontab中直接引入環境變量解決問題。
3.其他應該注意的問題
1)新創建的cron job,不會馬上執行,至少要過2分鐘才執行。如果重啟cron則馬上執行。
2)每條 JOB 執行完畢之后,系統會自動將輸出發送郵件給當前系統用戶。日積月累,非常的多,甚至會撐爆整個系統。所以每條 JOB 命令后面進行重定向處理是非常必要的: >/dev/null 2>&1 。前提是對 Job 中的命令需要正常輸出已經作了一定的處理, 比如追加到某個特定日志文件。
3)當crontab突然失效時,可以嘗試/etc/init.d/crond restart解決問題。或者查看日志看某個job有沒有執行/報錯tail -f /var/log/cron。
4)千萬別亂運行crontab -r。它從Crontab目錄(/var/spool/cron)中刪除用戶的Crontab文件。刪除了該用戶的所有crontab都沒了。
5)在crontab中%是有特殊含義的,表示換行的意思。如果要用的話必須進行轉義\%,如經常用的date ‘+%Y%m%d’在crontab里是不會執行的,應該換成date ‘+\%Y\%m\%d’`。
https://www.cnblogs.com/javabg/p/10535940.html