1. 程式人生 > 其它 >linux的crontab自動定時執行

linux的crontab自動定時執行

crontab自動定時執行
環境:centos7

編輯: crontab -e

*    *    *    *    *  program
-    -    -    -    -	 —執行程式語法
|    |    |    |    |
|    |    |    |    +----- 星期中星期幾 (0 - 6) (星期天 為0)
|    |    |    +---------- 月份 (1 - 12) 
|    |    +--------------- 一個月中的第幾天 (1 - 31)
|    +-------------------- 小時 (0 - 23)
+------------------------- 分鐘 (0 - 59)

例項:

0 */2 * * * /sbin/service httpd restart  意思是每兩個小時重啟一次apache 

50 7 * * * /sbin/service sshd start  意思是每天7:50開啟ssh服務 

50 22 * * * /sbin/service sshd stop  意思是每天22:50關閉ssh服務 

0 0 1,15 * * fsck /home  每月1號和15號檢查/home 磁碟 

1 * * * * /home/bruce/backup  每小時的第一分執行 /home/bruce/backup這個檔案 

00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \;  每週一至週五3點鐘,在目錄/home中,查詢檔名為*.xxx的檔案,並刪除4天前的檔案。

30 6 */10 * * ls  意思是每月的1、11、21、31日是的6:30執行一次ls命令

注意:當程式在你所指定的時間執行後,系統會發一封郵件給當前的使用者,顯示該程式執行的內容,若是你不希望收到這樣的郵件,請在每一行空一格之後加上 > /dev/null 2>&1 即可,如:

20 03 * * * . /etc/profile;/bin/sh /var/www/runoob/test.sh > /dev/null 2>&1

檢視:crontab -l

刪除:crontab -r

啟動、停止、重啟服務↓

systemctl start crond.service
systemctl stop crond.service
systemctl restart crond.service