標籤:order 顯示屏 絕對路徑 運行 art 提醒 服務 模式 開啟
閱讀目錄
- 1. cron服務【Ubuntu環境】
- 2. crontab用法
- 3. 編輯crontab檔案
- 4. 流程舉例
- 5. 幾個例子
Linux中,周期執行的任務一般由cron這個守護進程來處理。cron讀取一個或多個設定檔,這些設定檔中包含了命令列及其調用時間。cron的設定檔稱為“crontab”,是“cron table”的簡寫。
1. cron服務【Ubuntu環境】
查看cron狀態
開啟cron
sudo /etc/init.d/cron start |
關閉cron
sudo /etc/init.d/cron stop |
重啟cron
sudo /etc/init.d/cron restart |
2. crontab用法
crontab –e : 修改 crontab 檔案,如果檔案不存在會自動建立。 (這樣可以編輯模式開啟個人的crontab設定檔,然後加入一下這行:0 0 * * * /home/linrui/XXXXXXXX.sh
這將會在每天淩晨運行 指定的.sh檔案)
crontab –l : 顯示 crontab 檔案。
crontab -r : 刪除 crontab 檔案。
crontab -ir : 刪除 crontab 檔案前提醒使用者。
在crontab檔案中寫入需要執行的命令和時間,該檔案中每行都包括六個域,其中前五個域是指定命令被執行的時間,最後一個域是要被執行的命令。每個域之間使用空格或者定位字元分隔。格式如下:
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)
除了數字還有幾個特殊的符號:"*"、"/"和"-"、","
- *代表所有的取值範圍內的數字
- "/"代表每的意思,"/5"表示每5個單位
- "-"代表從某個數字到某個數字
- ","分開幾個離散的數字
注:commands 注意以下幾點
- 要是存在檔案,要寫絕對路徑
- 即使是列印也不會顯示在顯示屏,在後台運行,最好重新導向日誌
3. 使用vim編輯crontab檔案
EDITOR=vi |
export EDITOR |
crontab -e |
4.
Cron 各項的描述
以下是 crontab 檔案的格式:
{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script}
o minute: 區間為 0 – 59
o hour: 區間為0 – 23
o day-of-month: 區間為0 – 31
o month: 區間為1 – 12. 1 是1月. 12是12月.
o Day-of-week: 區間為0 – 7. 周日可以是0或7.
5. 例子解釋
1 0 * * * /home/lenovosh/work/bianyi.sh lumus nedp |
在每天淩晨00:01運行 指定的bianyi.sh指令檔
59 23 * * 1,2,3,4,5 /home/lenovosh/work/bianyi.sh lumus nedp |
在每個工作日23:59運行 指定的bianyi.sh指令檔,或者如下寫法
59 23 * * 1-5 /home/lenovosh/work/bianyi.sh lumus nedp |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*/1 * * * * /home/lenovosh/work/bianyi.sh lumus nedp |
每分鐘運行 指定的bianyi.sh指令檔
10 14 1 * * /home/lenovosh/work/bianyi.sh lumus nedp |
每個月的1號14:10運行 指定的bianyi.sh指令檔
1 0 * * 1,3,5 /home/lenovosh/work/bianyi.sh lumus nedp |
每周一、三、五淩晨00:01運行 指定的bianyi.sh指令檔
具體想看bianyi.sh(編譯指令碼)怎麼實現,請看下一篇部落格!
使用crontab,讓linux定時執行shell指令碼