1. 說明
centos7設置定時計划任務,可以利用crontab 來執行計划任務, 依賴與 crond 的系統服務,這個服務是系統自帶的,可以直接查看狀態,啟動,停止。
2.操作
1)安裝 crontabs服務
yum install crontabs
2)crontabs命令
systemctl status crond //查看狀態 systemctl enable crond //設為開機啟動 systemctl start crond //啟動crond服務
systemctl stop crond //關閉crond服務
systemctl restart crond //重啟crond服務
3) 配置定時規則
vim /etc/crontab //編輯
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 用戶的定時任務分6段,分別是:分,時,日,月,周,命令 第1列表示分鍾1~59 每分鍾用*或者 */1表示 第2列表示小時1~23(0表示0點) 第3列表示日期1~31 第4列表示月份1~12 第5列標識號星期0~6(0表示星期天) 第6列要運行的命令 *:表示任意時間都,實際上就是“每”的意思。可以代表00-23小時或者00-12每月或者00-59分 -:表示區間,是一個范圍,00 17-19 * * * cmd,就是每天17,18,19點的整點執行命令 ,:是分割時段,30 3,19,21 * * * cmd,就是每天凌晨3和晚上19,21點的半點時刻執行命令 /n:表示分割,可以看成除法,*/5 * * * * cmd,每隔五分鍾執行一次
實例
-
*/30 * * * root /usr/sbin/ntpdate ntp1.aliyun.com
(每天,每30分鍾執行一次命令)
-
* 3 * * * root /usr/sbin/ntpdate ntp1.aliyun.com
(每天凌晨三點,執行命令腳本,PS:這里由於第一個的分鍾沒有設置,那么就會每天凌晨3點的每分鍾都執行一次命令) 0 3 * * * root
(這樣就是每天凌晨三點整執行一次命令腳本)/usr/sbin/ntpdate ntp1.aliyun.com
*/10 11-13 * * * root /usr/sbin/ntpdate ntp1.aliyun.com
(每天11點到13點之間,每10分鍾執行一次命令腳本)10-30 * * * * root /usr/sbin/ntpdate ntp1.aliyun.com
(每小時的10-30分鍾,每分鍾執行一次命令腳本,共執行20次)10,30 * * * * * root /usr/sbin/ntpdate ntp1.aliyun.com
(每小時的10,30分鍾,分別執行一次命令腳本,共執行2次)
4)保存生效
crontab /etc/crontab
5)查看任務
crontab -l
6)查看日志
tail -f /var/log/cron