tid=18848&Linux/Unix 系統有個 crontab 程式是用來讓系統各使用者自行設定在需要的時間 ,做需要的事。
2 b5 O+ c" D# k e; k' ]1 m. y3 |* ^( l. x8 r( d" _8 X$ b) e2 w
例如使用者可以設定每星期三的早上8點會自動ftp 到某地去抓檔案, 或每天半夜3點自動備份資料等...要有定時裝置,記憶體內要常註 /usr/sbin/crond 程式一般 Linux 在開機時會自動載入,如果發現無 crond 在跑,可以到 /etc/rc.d/init.d/ 目錄下看看是否有將執行crond 程式的指令加入開機自動執行檔裡面。如果都沒有表示沒安裝crond, CentOS 下只要下指令 ! O: A7 ~. _& l' a
yum install vixie-cron 就可安裝完成" v# |8 ]1 o. w. b2 o
: j/ L! c2 z( R/ W% }2 P" P% e( x
使用者可以用 crontab -e(存檔後即刻生效) 指令來編寫需要做的工作或或寫在一個 file 裡,再執行 crontab filename 就可以了。所有使用者的 crontab 檔都會存在 /var/spool/cron/ 下,檔名就是該帳號的名字,例如 root。
9 n* @, X0 ^% f* hcrontab 的格式如下:
: {/ r# M: R9 N d5 [9 K: f, D n- _# C
分 時 日 月 星期 要執行的指令3 m; u- Y' m( [) x$ K' {- J9 ^
例如:6 d+ V0 O I e$ F5 B$ O* v( v/ R
. U6 H! H- b2 j, w- n% J; C/ J- T30 12 * * * /usr/bin/rm xxx.txt+ r5 c: f) y- e j r+ s$ Q
6 e, }! M/ I& ?/ W7 R
在 12:30 將 xxx.txt 這個檔案殺掉; y% h; Y+ z$ ~- D
* 號表示每日每月每星期都執行2 x2 r' Y1 p0 \8 _* T& Q- k2 Z6 k
另外寫 crontab 時須注意必須使用 絕對路徑如 rm 執行檔 必須寫成 /usr/bin/rm
- J0 ~, @$ ?! u1 I舉例:# every two hours at the top of the hour, | e5 Z1 I+ I* C% R; G
0 */2 * * * date
; V& y, `! }0 } # every two hours from 11p.m. to 7a.m., and at 8a.m.
% I K# D/ S2 q) l( Q# s- ] P 0 23-7/2,8 * * * date
! U( |7 @; b' d& V
6 T2 B* `1 {( c- s更詳細可參考: http://linux.vbird.org/linux_basic/0430cron.php
7 @. v* m r6 d8 q4 b
l% P& U' a3 f6 b( n3 b* g% j7 h" W* a9 |
: `+ F- y: x6 {# ?% v' Q
1 s7 K/ Z# H( q9 P% U6 i! i
|