crontab -l 表示列出全部的定時任務
crontab -r 表示刪除用戶的定時任務,當執行此命令後,全部用戶下面的定時任務會被刪除,執行crontab -l後會提示用戶:「no crontab for admin」
該文件中每行都包括六個域,其中前五個域是指定命令被執行的時間,最後一個域是要被執行的命令。
每一個域之間使用空格或者製表符分隔。格式以下:
minute hour day-of-month month-of-year day-of-week commands
分鐘 小時 每一個月的哪天 每一年的哪月 每一個星期的禮拜幾 需執行的命令
合法值 00-59 00-23 01-31 01-12 0-6 (0 is sunday) commands(表明要執行的腳本)
除了數字還有幾個個特殊的符號就是"*"、"/"和"-"、",",*表明全部的取值範圍內的數字,"/"表明每的意思,"/5"表示每5個單位,"-"表明從某個數字到某個數字,","分開幾個離散的數字。
crontab文件中的行由6個字段組成,不一樣字段間用空格或者tab鍵分割。前5個字段指定命令要運行的時間
分鐘(0-59)
小時(0-28)
日期(1-31)
月份(1-12)
星期幾(0-6,其中0表明星期日)
第六個字段是一個要在適當時間執行的字符串bash
幾個例子:
每五分鐘執行一次: */5 * * * *
每小時執行一次 : 0 * * * *
天天執行一次: 0 0 * * *
每週執行一次: 0 0 * * 0
每個月執行一次: 0 0 1 * *
每一年執行一次: 0 0 1 1 *
天天早上6點
0 6 * * * echo "Good morning." >> /tmp/test.txt //注意單純echo,從屏幕上看不到任何輸出,由於cron把任何輸出都email到root的信箱了。
每兩個小時
0 */2 * * * echo "Have a break now." >> /tmp/test.txt
晚上11點到早上8點之間每兩個小時和早上八點
0 23-7/2,8 * * * echo "Have a good dream" >> /tmp/test.txt
每一個月的4號和每一個禮拜的禮拜一到禮拜三的早上11點
0 11 4 * 1-3 command line
1月1日早上4點
0 4 1 1 * command line SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root //若是出現錯誤,或者有數據輸出,數據做爲郵件發給這個賬號 HOME=/
每小時執行/etc/cron.hourly內的腳本
01 * * * * root run-parts /etc/cron.hourly
天天執行/etc/cron.daily內的腳本
02 4 * * * root run-parts /etc/cron.daily
每星期執行/etc/cron.weekly內的腳本
22 4 * * 0 root run-parts /etc/cron.weekly
每個月去執行/etc/cron.monthly內的腳本
42 4 1 * * root run-parts /etc/cron.monthly
注意: "run-parts"這個參數了,若是去掉這個參數的話,後面就能夠寫要運行的某個腳本名,而不是文件夾名。
天天的下午4點、5點、6點的5 min、15 min、25 min、35 min、45 min、55 min時執行命令。
5,15,25,35,45,55 16,17,18 * * * command
每週一,三,五的下午3:00系統進入維護狀態,從新啓動系統。
00 15 * * 1,3,5 shutdown -r +5
每小時的10分,40分執行用戶目錄下的innd/bbslin這個指令:
10,40 * * * * innd/bbslink
每小時的1分執行用戶目錄下的bin/account這個指令:
1 * * * * bin/account
天天早晨三點二十分執行用戶目錄下以下所示的兩個指令(每一個指令以;分隔):
20 3 * * * (/bin/rm -f expire.ls logins.bad;bin/expire$#@62;expire.1st)
每一年的一月和四月,4號到9號的3點12分和3點55分執行/bin/rm -f expire.1st這個指令,並把結果添加在mm.txt這個文件以後(mm.txt文件位於用戶本身的目錄位置)。
12,55 3 4-9 1,4 * /bin/rm -f expire.1st$#@62;$#@62;mm.txt