tid=18848&Linux/Unix 系統有個 crontab 程式是用來讓系統各使用者自行設定在需要的時間 ,做需要的事。
# y4 w4 ?, p" a: w) Y# q# V9 u2 a( i6 J9 ^$ R4 `
例如使用者可以設定每星期三的早上8點會自動ftp 到某地去抓檔案, 或每天半夜3點自動備份資料等...要有定時裝置,記憶體內要常註 /usr/sbin/crond 程式一般 Linux 在開機時會自動載入,如果發現無 crond 在跑,可以到 /etc/rc.d/init.d/ 目錄下看看是否有將執行crond 程式的指令加入開機自動執行檔裡面。如果都沒有表示沒安裝crond, CentOS 下只要下指令 . ]7 F! J) y9 a4 g' ]' U
yum install vixie-cron 就可安裝完成$ Y9 W9 u3 Q) }2 X' S2 @
2 _' W; S: @3 X: P( k" s使用者可以用 crontab -e(存檔後即刻生效) 指令來編寫需要做的工作或或寫在一個 file 裡,再執行 crontab filename 就可以了。所有使用者的 crontab 檔都會存在 /var/spool/cron/ 下,檔名就是該帳號的名字,例如 root。' r I4 J9 M7 g
crontab 的格式如下:% B/ I6 H9 \. g- j9 Q- {) _* P8 E5 |
( s7 u! y2 \9 y; H" X+ i5 G/ |
分 時 日 月 星期 要執行的指令
* ?5 Y K2 O) L) W; f例如:" Q0 e9 L0 \1 C% j" }! r' d
7 n5 N I" N3 R
30 12 * * * /usr/bin/rm xxx.txt
+ [% q( f+ z: p! x& O6 D7 t% N# s) H4 X a1 k1 ]
在 12:30 將 xxx.txt 這個檔案殺掉
9 h u' y3 o u; A+ t5 q0 i$ H! E: m* 號表示每日每月每星期都執行
3 e/ z$ U( S# y: `1 E. P另外寫 crontab 時須注意必須使用 絕對路徑如 rm 執行檔 必須寫成 /usr/bin/rm. G* r. m- j% y3 W+ p9 d9 f
舉例:# every two hours at the top of the hour
/ N$ B# b* N! t0 Z! w" x 0 */2 * * * date% x) V, {: s: C8 J3 H8 Y! }3 h
# every two hours from 11p.m. to 7a.m., and at 8a.m.+ A, ^) g a2 Y+ H$ M
0 23-7/2,8 * * * date
# Y4 H7 Q4 ]! G: v& s
2 j* i, w" L: z* v更詳細可參考: http://linux.vbird.org/linux_basic/0430cron.php- N7 v1 z E: o. m: c$ o
1 W3 A( Q2 s# ~# L
- f: l+ c! J. C5 S! X v# C$ J# A. E7 M! Y. [
" d3 m, ]- Z/ Y4 S; `) D/ X8 e |