1. 程式人生 > >crontab命令常見用法示例

crontab命令常見用法示例

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59) 分鐘-範圍是0到59
# |  .------------- hour (0 - 23) 小時-範圍是0到23
# |  |  .---------- day of month (1 - 31) 日-範圍是1-31
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ... 月份-範圍是1-12 或者是 英文簡寫
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat 周-範圍是0到6,週日可以用0和7表示
# | | | | | # * * * * * user-name command to be executed 最後跟上要執行的命令 1、每個時間位都應該使用其可用的有效取值範圍內的值 2、某時間位上的*表示對應位的所有有效取值 3、-: 連續的時間相鄰點取值 4、,: 離散的時間點取值 5、/#:表示在指定時間範圍內每隔#執行一次

“每週”和”每月每天”通常不會同時使用

crontab 命令的一般形式
        crontab [-u username] -e -l -r 
        -u username 
        -e (edit) 呼叫EDITOR環境變數指定的編輯器編輯計劃任務
-l (list) 列出使用者的計劃任務 -r (remove) 刪除使用者的計劃任務(所有的) 如果使用者使用自己的名字登入,就不用使用-u選項; 當時用 crontab 執行shell指令碼的時候,要由使用者來給出指令碼的絕對路徑,設定相應的環境變數; 如果crontab不能執行相應的指令碼,使用者將收到一封郵件說明其中的原因; 直接使用crontab -e命令,它會呼叫系統設定的環境變數EDITOR來編輯; 我們在設定計劃任務之前,可以先設定這個環境變數的值: 編輯使用者家目錄下的.profile檔案
vim ~/.profile 加入以下內容: EDITOR=vi; export EDITOR 1. 30 21 * * * /apps/bin/cleanup.sh 每天晚上的21:30執行/apps/bin/目錄下的cleanup.sh 2. 45 4 1,10,22 * * /apps/bin/backup.sh 每月的1 、 10 、 22號的4:45執行/apps/bin/目錄下的backup.sh 3. 10 1 * * 6,0 /bin/find -name "core" -exec rm {} \; 每週六、週日的1:10執行一個find命令 4. 0,30 18-23 * * * /apps/bin/dbcheck.sh 每天18點到23點之間每隔30分鐘執行/apps/bin目錄下的dbcheck.sh 5. 0 23 * * 6 /apps/bin/qtrend.sh 每週六的11:00執行/apps/bin/目錄下的qtrend.sh 6. 0 15 23 * * 每月23號15點0分執行一次 7. * 15 23 * * 每月23號15點每分鐘執行一次 8. 30-35 7 * * * 每天的7點30到35分這個時間段內每分鐘執行一次(共6次) 9. 5,35 * * * * 每天的每小時的5分和35分執行一次 10. */3 * * * * 每隔3分鐘執行一次 11. 3,33 9-18/2 * * 1-5 週一到週五每天的9點到18點之間每2小時的3分和33分執行一次