Unixコマンド/crontab

crontab

dokuwiki.fl8.jp掲載済

機能

cronとは、指定したアプリケーションを定期的に自動実行する為のデーモンです。
日時、曜日など詳細な設定を施す事ができる為、一般的には定時に行なうシステム診断、ログの圧縮といった、定期的に行なう必要のある作業に利用されます。
アイデア次第では効率的な運用に非常に役立ちます。

構文

crontab [オプション]

オプション

-u       プログラムの所有者を指定
-l       設定済みのcrontabを表示
-r       既存のcrontabを削除
-e       viなどのエディタを起動。編集後crontabを自動的にインストール

crontabの書式

[min] [hour] [day] [month] [week] [command]

min(0-60,*)      分を指定
hour(0-24,*)     時を指定
day(0-30,*)      日を指定
month(0-12,*)    月を指定
week(0-6,*)      曜日を指定(0は日曜、1は月曜、2は火曜)
command          実行するコマンドまたはスクリプトを記述する 

コマンド例

■crontabの情報を表示する

$ crontab -l
0 0 * * *   /home/hoge/logcut.pl ←毎日0時0分にlogcut.plを実行

■コマンドの実行結果を決まった時間に送信する。

$ crontab -e
0 0 * * *   /home/hoge/logcut.pl 2>&1 | mail matsui@ma21.ath.cx

■リストにする事もできカンマで区切る
この場合3時6時9時12時

00 3,6,9,12 * * *

■0時から12時の毎時23分に実行

23 0-12 * * *

■0時、2時、4時、6時、8時、10時、12時の毎時23分に実行

23 0-12/2 * * *

■結果をメールしない

0 0 * * *   /home/hoge/logcut.pl >/dev/ null 2>&1