crontab用法總結

2021-09-18 02:24:33 字數 2478 閱讀 7754

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 filecrontab 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 第二字段小時表示每日的第幾個小時執...