crontab命令用於linux系統之中,用於設定周期性被執行的指令。crontab檔案包含送交cron守護進程的一系列作業和指令。每個使用者可以擁有自己的crontab檔案;同時,作業系統儲存一個針對整個系統的crontab檔案,該檔案通常存放於/etc或者/etc之下的子目錄中,而這個檔案只能由系統管理員來修改。
crontab檔案的每一行均遵守特定的格式,由空格或tab分隔為數個領域,每個領域可以放置單一或多個數值。
參數:
1. crontab -l 列出當前的crontab任務
2. crontab -d 刪除當前的crontab任務
3. crontab -e 編輯一個crontab任務
4. crontab filename 以filename做為crontab的工作清單檔案並載入
crontab 的格式:
crontab 檔案中的行由 6 個欄位組成,不同欄位間用空格或 tab 鍵分隔。這 6 個欄位分別是:
分鐘(0-59) 小時(0-23) 日期(1-31) 月份(1-12) 星期幾(0-6,其中0代表星期日) 命令
MIN HOUR DAY MONTH DAYOFWEEKCOMMAND
例1:#每天早上6點10分
10 6 * * * date
例2:#每兩個小時
0 */2 * * * date
例3:#晚上11點到早上8點之間每兩個小時,早上8點
0 23-7/2,8 * * * date
例4:#每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點
0 11 4 * 1-3 date
例5:#1月1日早上4點
0 4 11 * date
補充:在使用crontab的時候,要特別注意的是運行指令碼中能夠訪問到的環境變數和當前測試環境中的環境變數未必一致,一個比較保險的做法是在啟動並執行指令碼程式中自行設定環境變數(export)
以檔案方式運行:
(1)先建一個檔案crond.txt如下, 每天早上5點36分重新啟動
36 5 * * * reboot
(2)上傳到/opt目錄
(3)運行命令
crontab /opt/crond.txt
crontab -l
讓設定檔生效:如果讓設定檔生效,還得重新啟動crond,切記,既然每個使用者下的crond設定檔修改後。也要重新啟動crond伺服器。
計劃任務啟動:[start stop status restart]
[root@localhost ~]#/etc/init.d/crond start //方法一
[root@localhost ~]#service crond start //方法二
如果讓crond 在開機時運行,應該改變其運行層級;
[root@localhost ~]# chkconfig --levels 35 crond on