Linux/Unix 系統有個 crontab 程式是用來讓系統各使用者自行設定在需要的時間 ,做需要的事。
) D! t" e+ \! n6 Q' d. N% V& R0 l7 p
例如使用者可以設定每星期三的早上8點會自動ftp 到某地去抓檔案, 或每天半夜3點自動備份資料等...要有定時裝置,記憶體內要常註 /usr/sbin/crond 程式一般 Linux 在開機時會自動載入,如果發現無 crond 在跑,可以到 /etc/rc.d/init.d/ 目錄下看看是否有將執行crond 程式的指令加入開機自動執行檔裡面。如果都沒有表示沒安裝crond, CentOS 下只要下指令
! \3 {: B4 F! x5 Ayum install vixie-cron 就可安裝完成: `2 k: _3 Z n% C; f) r
9 |! \, Z N: ?+ M6 @) w
使用者可以用 crontab -e(存檔後即刻生效) 指令來編寫需要做的工作或或寫在一個 file 裡,再執行 crontab filename 就可以了。所有使用者的 crontab 檔都會存在 /var/spool/cron/ 下,檔名就是該帳號的名字,例如 root。8 a \2 I6 p [ x/ K0 V
crontab 的格式如下:
7 {+ g, |! }' b2 W/ U" i. _* R- x: t3 Q1 P' e% M, E, S$ r
分 時 日 月 星期 要執行的指令
$ J5 F# `+ H) m5 h! ^1 F0 W例如:
$ S; l* ~8 E+ Q8 o: h* ?' G- J% A* A$ A2 d/ u* t0 z9 l
30 12 * * * /usr/bin/rm xxx.txt
l# a- F& u, v/ I
% q/ \' a3 ]9 R+ U4 }在 12:30 將 xxx.txt 這個檔案殺掉/ l) V/ c2 ^" Q4 {( P' E3 [* n2 j# r
* 號表示每日每月每星期都執行. M7 C1 Q1 `, G
另外寫 crontab 時須注意必須使用 絕對路徑如 rm 執行檔 必須寫成 /usr/bin/rm. r3 l, a. A% |3 `/ ^; W
舉例:# every two hours at the top of the hour
$ k% f' Y4 n# L* V B& m( ` 0 */2 * * * date
% D. e6 N* T% O4 y. H a # every two hours from 11p.m. to 7a.m., and at 8a.m.
$ N/ s9 a) l# q% C) G* z 0 23-7/2,8 * * * date/ y) Q- e6 _: E* ]
& b, h9 T* O `7 V2 Q6 L- h6 ?+ Z更詳細可參考: http://linux.vbird.org/linux_basic/0430cron.php$ `9 v4 p2 s" C/ `
7 e6 r, o9 Z+ U8 z
- E' u$ E" U a7 t6 ? Z! }
* P7 V( h& l1 B8 X; T+ |1 L3 f) o% F
' I8 `' s S- ]2 g& F4 W |
|