CentOS Crontab(定時任務)

OldBoy~發表於2017-05-17

安裝crontab:

yum install crontabs

說明:

service crond start //啟動服務
service crond stop //關閉服務
service crond restart //重啟服務
service crond reload //重新載入配置
檢視crontab服務狀態:service crond status
手動啟動crontab服務:service crond start

檢視crontab服務是否已設定為開機啟動,執行命令:ntsysv

加入開機自動啟動:

chkconfig crond on

 1、編輯命令

       1)、在命令列輸入: crontab -e 然後新增相應的任務,wq存檔退出

       2)、直接編輯/etc/crontab 檔案,即vi /etc/crontab,新增相應的任務

   2、檔案格式

       Minute Hour Day Month DayofWeek CommandPath

   3、引數說明

       Minute:每個小時的第幾分鐘執行該任務;取值範圍0-59

       Hour:每天的第幾個小時執行該任務;取值範圍0-23

       Day:每月的第幾天執行該任務;取值範圍1-31

       Month:每年的第幾個月執行該任務;取值範圍1-12

       DayOfWeek:每週的第幾天執行該任務;取值範圍0-6,0表示週末

       CommandPath:指定要執行的程式路徑

   4、時間格式

       * :表示任意的時刻;如小時位 * 則表示每個小時

       n :表示特定的時刻;如小時位 5 就表示5時

       n,m :表示特定的幾個時刻;如小時位 1,10 就表示1時和10時

       n-m :表示一個時間段;如小時位 1-5 就表示1到5點

       */n : 表示每隔多少個時間單位執行一次;如小時位 */1 就表示每隔1個小時執行一次命令,也可以寫成 1-23/1

   5、排程示例

 * 1 * * * /opt/script/backup.sh :從1:0到1:59 每隔1分鐘 執行
 15 05 * * * /opt/script/backup.sh :05:15 執行
*/10 * * * * /opt/script/backup.sh :每隔10分 執行
0 17 * * 1 /opt/script/backup.sh :每週一的 17:00 執行
2 8-20/3 * * * /opt/script/backup.sh  8:02,11:02,14:02,17:02,20:02 執行

實際舉例

crontab檔案的一些例子:

30 21 * * * /etc/init.d/nginx restart             //每晚的21:30重啟 nginx。
45 4 1,10,22 * * /etc/init.d/nginx restart        //每月1、 10、22日的4 : 45重啟nginx。
10 1 * * 6,0 /etc/init.d/nginx restart            //每週六、週日的1 : 10重啟nginx。
0,30 18-23 * * * /etc/init.d/nginx restart        //每天18 : 00至23 : 00之間每隔30分鐘重啟nginx。
0 23 * * 6 /etc/init.d/nginx restart              //每星期六的11 : 00 pm重啟nginx。
* */1 * * * /etc/init.d/nginx restart             //每一小時重啟nginx
* 23-7/1 * * * /etc/init.d/nginx restart          //晚上11點到早上7點之間,每 隔一小時重啟nginx
0 11 4 * mon-wed /etc/init.d/nginx restart        //每月的4號與每週一到週三 的11點重啟nginx
0 4 1 jan * /etc/init.d/nginx restart             //一月一號的4點重啟nginx
*/30 * * * * /usr/sbin/ntpdate 210.72.145.20      //每半小時同步一下時間

 

相關文章