除了at、crontab外,batch和anacron也和例行工作相關。
batch和at作用基本一致,主要區別是batch是當cpu工作負載小於0.8時才進行後續的工作安排,從而避免cpu100%負載狀態時還要進行例行工作。
而anacron的作用是配合 /etc/anacrontab 的設定,可以喚醒停機期間系統未進行的 crontab 任務。
/etc/crontab 配置文件內容:
[root@www ~]# cat /etc/crontab
SHELL=/bin/bash <==使用哪種 shell 接口 PATH=/sbin:/bin:/usr/sbin:/usr/bin <==執行文件搜尋路徑
MAILTO=root <==若有額外 STDOUT,以 email 將數據送給 誰
HOME=/ <==默認此 shell 的家目錄所在
# run-parts
01 * * * * root run-parts /etc/cron.hourly <==每小時
02 4 * * * root run-parts /etc/cron.daily <==每天
22 4 * * 0 root run-parts /etc/cron.weekly <==每週日
42 4 1 * * root run-parts /etc/cron.monthly <==每個月 1 號
分時 日月 周 執行者身份 指令串,其中run-parts是個指令,其具體行爲是“將後面接的『目 錄』內的所有檔案捉出來執行!”
由於 CentOS 提供的 run-parts 這個 script 的輔助,因此 /etc/crontab 這個檔案裏面支持兩種下達指令的方式。
一種是直接下達指令,例如:
01 * * * * dmtsai mail -s "testing" kiki < /home/dmtsai/test.txt /*以 dmtsai 這個使用者的身份,在每小時執行一次 mail 指令。/
一種則是以目錄來規劃,例如:
*/5 * * * * root run-parts /root/runcron /*建立一個 /root/runcron 的目錄,將要每隔五分鐘執行的『可執行文件』都寫到該目錄下, 就可以讓系統每五分鐘執行一次該目錄下的所有可執行文件。/