上面2個完全錯誤
/etc/cron.hourly 為每小時的01分時執行
/etc/cron.daily 為每天4點02分執行
/etc/cron.weekly 為每星期日4點22分執行
/etc/cron.monthly為每月1號的4點42分執行
詳細設定你可以看一下系統crontab
這是系統在使用的crontab專供OS作業或是其他應用程式使用的
一般個人(包含root)的crontab請使用
個人的crontab位置為 /var/spool/cron
/ect/cron.daily 並不會自動執行
他的用意是你把每天要做的工作,都放在這個裡面
再用crontab 定義每天執行的時間
任何使用者只要不被列入 /etc/cron.deny 當中,那麼他就可以直接下達『 crontab -e 』去編輯自己的例行性命令了!整個過程就如同上面提到的,會進入 vi 的編輯畫面, 然後以一個工作一行來編輯,編輯完畢之後,輸入『 :wq 』儲存後離開 vi 就可以了! 而每項工作的格式都是『 五個時間參數 實際動作指令 』,那麼那五個時間參數代表什麼呢?
代表意義 分鐘 小時 日期 月份 週
數字範圍 0-59 0-23 1-31 1-12 0-7
比較有趣的是那個『週』喔!當週為 0 或 7 時,都代表『星期天』的意思!另外, 還有一些輔助的字符,大概有底下這些:
特殊字符 代表意義
* 代表任何時刻都接受的意思!舉例來說,上表的範例一,那個日、月、週都是 * , 就代表著『不論何月、何日的禮拜幾的 12:00 都執行後續指令』的意思!
, 代表分隔時段的意思。舉例來說,如果要下達的工作是 3:00 與 6:00 時,就會是: 0 3,6 * * * command
還是有五欄,不過第二欄是 3,6 ,代表 3 與 6 都適用!
例題:假若你的女朋友生日是 5 月 2 日,你想要在 5 月 1 日的 23:59 發一封信給他,這封信的內容已經寫在 /home/dmtsai/lover.txt 內了,該如何進行?
答: 直接下達 crontab -e 之後,編輯成為:
59 23 1 5 * mail kiki < /home/dmtsai/lover.txt 那樣的話,每年 kiki 都會收到你的這封信喔!(當然囉,信的內容就要每年變一變啦!)
例題:假如每五分鐘需要執行 /home/dmtsai/test.sh 一次,又該如何?
答: 同樣使用 crontab -e 進入編輯:
*/5 * * * * /home/dmtsai/test.sh
那個 crontab 每個人都只有一個檔案存在,就是在 /var/spool/cron 裡面啊! 還有建議您:『指令下達時,最好使用絕對路徑,這樣比較不會找不到執行檔喔!』
例題:假如你每星期六都與朋友有約,那麼想要每個星期五下午 4:30 告訴你朋友星期六的約會不要忘記,則:
答:
還是使用 crontab -e 啊!
30 16 * * 5 mail friend@his.server.name < /home/dmtsai/friend.txt