Ubuntu 下計劃任務使用(crontab)

Joe_vv發表於2015-06-01

1. crontab 語法格式:

f1    f2    f3    f4    f5    program
其中 f1 是表示分鐘,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程式。
當 f1 為 * 時表示每分鐘都要執行 program,f2 為 * 時表示每小時都要執行程式,其餘類推 ;
當 f1 為 a-b 時表示從第 a 分鐘到第 b 分鐘這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推 ;
當 f1 為 */n 時表示每 n 分鐘個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推 ;
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鐘要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推 ;
使用者也可以將所有的設定先存放在檔案 file 中,用 crontab file 的方式來設定計劃任務。


2. 舉例說明:

例1:

*        *    *    *    *                  # 每隔一分鐘執行一次任務  
0        *    *    *    *                  # 每小時的0分執行一次任務,比如6:00,10:00  
6,10     *    2    *    *                  # 每個月2號,每小時的6分和10分執行一次任務  
*/3,*/5  *    *    *    *                  # 每隔3分鐘或5分鐘執行一次任務,比如10:03,10:05,10:06
以上省略了命令部分 program。


例2:

0    7         *    *    *    /bin/ls                                            #每天早上7點執行一次 /bin/ls 
0    6-12/3    *    12   *    /usr/bin/backup                                    #在 12 月內, 每天的早上 6 點到 12 點中,每隔3個小時執行一次 /usr/bin/backup
0    17        *    *    1-5  mail -s "hi" alex@domain.name < /tmp/maildata      #週一到週五每天下午 5:00 寄一封信給 alex@domain.name 
20   0-23/2    *    *    *    echo "haha" >> /tmp/haha.txt                       #每月每天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....向 /tmp/haha.txt 檔案中寫入 haha 


3. 配置方法:

        Ubuntu下配置計劃任務有兩種方法(目前我只知道),一是直接在 /var/spool/cron/crontabs/目錄下新建一個使用者檔案,在該檔案中配置計劃任務;二是直接使用 crontab -e 命令編輯當前使用者的計劃任務。

        以 root 使用者為例,兩種方法設定的計劃任務都是 /var/spool/cron/crontabs/root 檔案,格式也一樣,區別就是直接編輯檔案後,需要呼叫 crontab /var/spool/cron/crontabs/root 才能使配置生效,而使用 crontab -e 編輯後,使用 Crtl + X 儲存退出後,直接生效。可用 crontab -l 檢視計劃任務。


參考:

http://www.cnblogs.com/daxian2012/articles/2589894.html

http://www.blogjava.net/parable-myth/archive/2013/02/22/395555.html




博主所有文章已轉自私人部落格 Joe 的個人部落格,謝謝關注!

相關文章