cron是一個[守護程序]用於在指定的時間內執行行程類的任務,每個用戶都有一個 crontab 文件,來容許他們指定須要執行的內容和時間,此外,系統也有一個 crontab ,用來容許像交替日誌和更新本地數據這樣有規則的任務。shell
環境:Ubuntn 14.04apache
一、設置默認編輯器,不然默認編輯器是nanodom
select-editor
選擇的是3 回車編輯器
二、而後輸入post
crontab -e
以後就能夠輸入你想執行的內容了.spa
好比:*/2 * * * * date >> /home/postgres/time.log 它的意思就是每過兩分鐘就向time.log文件中寫入固然的系統時間.rest
參數說明日誌
# m h dom mon dow commandcode
m 分鐘 0-59orm
h 小時 0-23
dom 天1-31
mon 月 1-12
dow 星期 1-6 0表示星期天
command 就是要執行的命令
除了這些固定值外,還能夠配合星號(*),逗號(,),和斜線(/)來表示一些其餘的含義:
星號 表示任意值,好比在小時部分填寫 * 表明任意小時(每小時)
逗號 能夠容許在一個部分中填寫多個值,好比在分鐘部分填寫 1,3 表示一分鐘或三分鐘
斜線 通常配合 * 使用,表明每隔多長時間,好比在小時部分填寫 */2 表明每隔兩分鐘。因此 */1 和 * 沒有區別
1. * * * * * date >> /home/postgres/time.log # 每隔一分鐘執行一次任務
2. 0 * * * * date >> /home/postgres/time.log # 每小時的0點執行一次任務,好比6:00,10:00
3. 6,10 * 2 * * date >> /home/postgres/time.log # 每月2號,每小時的6分和10分執行一次任務
4. */3,*/5 * * * * date >> /home/postgres/time.log # 每隔3分鐘或5分鐘執行一次任務,好比10:03,10:05,10:06
3 * * * * /home/meng/hello.sh就是:每小時的03分執行/home/meng/下的hello.sh腳本*/5 9-17 * * mon,tue,wed,thur,fri wall "Are we there yet?"
5 3 * * * /usr/bin/apt-get update 就是天天的03:05執行「/usr/bin/apt-get update
*/5 9-17 * * mon,tue,wed,thur,fri wall "Are we there yet?" 就是在全部的工做日的(9-17點)每過5分鐘出現"Are we there Yet?"
#每晚的21:30重啓apache。
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
#每個月一、十、22日
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#天天早上6點10分
10 6 * * * date
#每兩個小時
0 */2 * * * date
#晚上11點到早上8點之間每兩個小時,早上8點
0 23-7/2,8 * * * date
#每月的4號和每一個禮拜的禮拜一到禮拜三的早上11點
0 11 4 * mon-wed date
#1月份日早上4點
0 4 1 jan * date
crontrab重啓
service cron restart 重啓 service cron reload 從新加載配置文件