cronで自動処理

cron(クーロン)は決まった時間にプログラム、スクリプトを実行してくれるデーモンです。

cronの設定は crontab コマンドを使います。

cron


$ crontab -e
 

crontab -e で標準のエディタ( 大体vi )が起動します。

crontabの書き方


1 * * * * /root/sco.sh #毎時間1分に /root/sco.sh を実行
10 4 * * * /home/kazan.pl #1日1回4時10分に /home/kazan.plを実行
* * * * * /home/arc.sh #1分ごとに /home/arc.shを実行
*/10 * * * * /home/kazan.sh #10分ごとに /home/kazan.shを実行
5,10,15 * * * * /home/kazan.sh #毎時間5分と10分と15分に /home/kazan.shを実行
5 1-3 * * * /home/kazan.sh #1時5分と2時5分と3時5分に /home/kazan.shを実行
 

crontab の書式は以下の通り

分( 0-59 ) 時( 0-23 ) 日( 0-31) 月( 0-12 ) 曜日( 0-7 ) 処理

曜日は0と7が日曜日
複数ある場合はカンマ「,」で区切って指定
ハイフンを用いると範囲が指定できる「2-5」は2,3,4,5に相当
「/」は間隔を指定「*/2」は2分(時間)ごと
したがって、「*/10」と「0.10.20.30.40.50」は同じ

crontab -e で設定したものは以下のコマンドで確認したり、削除したりできる

cron


確認
$ crontab -l
 
削除
$ crontab -r
 

cronの実行は crontab 以外に /etc/cron.dialy などのディレクトリにスクリプトを入れておくことで、定期的に実行できます。

/etc/cron.*


毎日実行
/etc/cron.dialy
 
毎時間実行
/etc/cron.hourly
 
毎月実行
/etc/cron.monthly
 
毎週実行
/etc/cron.weekly
 

上記のディレクトリの中にスクリプトを入れておくだけで定期的に実行してくれます。
実行日時、時間は /etc/crontab に記載されています。