crontab是什麼
crontab命令常見於unix和類unix的作業系統之中,用於設定週期性被執行的指令。「crontab」一詞**於希臘語chronos(χρνο),原意是時間.
而crond是linux下用來週期性的執行某種任務或等待處理某些事件的乙個守護程序,作業系統缺省會安裝此服務工具,並且會自動啟動crond程序,crond程序每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。
環境:centos 7.0 64位
1.crontab檔案的位置.
所有使用者定義的crontab檔案都被儲存在/var/spool/cron目錄中,檔名與使用者名稱保持一致.例如:
使用者「root」的crontab檔案位於:/var/spool/cron/root
使用者「zhou」的crontab檔案位於:/var/spool/cron/zhou
2.黑名單&白名單的檔案位置
名稱位置
作用白名單
/etc/cron.allow
將可以使用 crontab 的帳號寫入其中,若不在這個檔案內的使用者則不可使用 crontab;
黑名單/etc/cron.deny
將不可以使用 crontab 的帳號寫入其中,若未記錄到這個檔案當中的使用者,就可以使用 crontab .
白名單的優先順序高於黑名單,但是系統預設保留的是黑名單.可以將某些使用者寫入/etc/cron.deny中,乙個帳號一行,這樣這些使用者就不能使用crontab了.
3.crontab配置檔案的語法
配置檔案中的每一行具有六個字段,這六個欄位的意義為:
意義分鐘
小時日期
月份星期
命令範圍
0-59
0-23
1-31
1-12
0-7command
其中星期取值為0和7時均代表星期日.
前五欄除了可以取上表中的這些值外,還可以取下面這些特殊引數:
注意時間與星期不能同時設定,例如下面就是乙個錯誤的寫法:* |代表任何時刻均可執行.
, |代表分隔時段,例如要在3:00和6:00兩個時刻執行命令:```0 3,6 * * * command```
- |代表範圍,例如要在8:20,9:20,10:20三個時刻執行命令:```20 8-10 * * * command```
/n |代表間隔,例如每10分鐘執行一次命令:```*/10 * * * * command```
30 12 11 9 5 command
此時,系統可能會判定在每週五執行該命令,也可能判定在每年的9月11日執行該命令,而非在9月11日且為周五才去執行命令.
crond服務的監控間隔為1分鐘,因此cron會每分鐘去讀取一次/etc/crontab 與 /var/spool/cron 裡面的資料內容.只要你編輯完 /etc/crontab 這個檔案,並且將他儲存之後,那麼 cron 的配置就會自動的執行了!
4.crontab命令
命令含義
crontab file
crontab opt
就是將當前目錄下的opt檔案匯入當前使用者的crontab配置檔案中.
crontab -l
檢視當前使用者的crontab配置檔案內容.
crontab -e
編輯當前使用者的crontab配置檔案內容.
crontab -r
編輯當前使用者的crontab配置檔案內容.
5.crontab服務
命令含義
service crond status
檢視crontab服務狀態
service crond start
啟動crontab服務
service crond stop
關閉crontab服務
service crond restart
重啟crontab服務
service crond reload
過載crontab服務配置
6.?在sample1檔案中寫入如下內容:
* * * * * date > sample2
執行命令:crontab sample1
這樣就配置了乙個最簡單的crontab,每分鐘執行一次命令.
用tail -f sample2
命令檢視命令的執**況:
可以看到crontab已經啟動了,每分鐘的00秒自動執行命令.
輸入命令crontab -r
後,crontab就不再執行任何命令了.
7.參考文章
參考文章1
參考文章2
crontab命令用法
任務排程的crond常駐命令 crond 是linux用來定期執行程式的命令。當安裝完成作業系統之後,預設便會啟動此任務排程命令。crond命令每分鐘會定期檢查是否有要執行的工作,如果有要執行的工作便會自動執行該工作。而linux任務排程的工作主要分為以下兩類 1 系統執行的工作 系統週期性所要執行...
crontab用法疑雲
crontab的教程裡面,一般都說 n 表示每隔n分鐘 小時執行一次。偶爾的教程裡會講到 這個n應該被60整除才行。我在網上基本上沒有搜到,如果n不被60整除的時候,會是怎樣?問題起因最開始在於 個人有個crontab任務,希望設定成40分鐘執行一次。但是設定了 40之後發現,任務總是會在整點和40...
crontab用法詳解
crontab命令用於設定週期性被執行的命令,適用於日誌備份,清理快取,健康狀態檢測等場合。crontab的配置檔案 etc crontab 配置檔案分七個字段,分別是 分鐘 小時 日 月 星期 使用者 任務 第一字段分鐘表示每小時的第幾分鐘執行 取值範圍0 59 第二字段小時表示每日的第幾個小時執...