crontab 定義時任務並不難,只是死記更背有點難受。國外人的思惟方式有時候就是違反思惟邏輯。好比:中國人寫收貨地址是從大到小,一步一步清晰明瞭;外國人就不同了,先從小地方開始,你根本不知道是啥子地方,只有看完以後反推一遍,你才明白。唉,打個不貼切地比喻,整得像個遞歸算法似的。算法
#查看是否安裝了該服務
rpm -qa|grep cron
#查看cron的狀態
systemctl status crond
#啓動crond服務
systemctl start crond
#設爲開機啓動
systemctl enable crond
#查看定時任務列表
crontab -u <username> -l
#編輯 crontab 的配置文件,默認 crontab 會每分鐘檢查一次任務配置文件
crontab -u <username> -e
--------------------------------------------------------------------------------------------
# crontab 基本格式:分(0 - 59) 時(0 - 23) 日(1 - 31) 月(1 - 12) 周(0 - 6,0:日) 命令
# */30 * * * * /usr/local/command # 從後往前數,周月--日時分,當跳過全部 " * ", 最後是分,即每30分鐘執行一次。
-----------------------------------------------------------------------------------------------------------
#編輯 crond 的主配置文件(root)
vim /etc/crontab
特別注意,crond的任務計劃有本身的環境變量,這時你要麼寫完整的絕對路徑,要麼將環境變量添加到 /etc/crontab 中
例子( 倒着看:周月--日時分,跳過星號。):
30 12 1,10,22 * * #表示 [1,10,20]日,12:30
30 12 * * 6,0 #表示 [6,日]周, 12:30
0,30 18-23 * * * #表示 [18-23]時,[0, 30]分
0 23 * * 6 #表示 周6,11:00
* 23-7/1 * * * #表示 [23-7/每過1個單位時間執行]點
0 11 4 * mon-wed #表示 [1-3]周 4日 11時
0 4 1 jan * #表示 1月 1日 4時