crontabについて [UNIX]
サーバサイドで定期的にプログラムを自動で動かすためにcronを使います。
cronを使うには、crontabを設定します。
crontabの設定方法をメモしておきます。
crontabの設定状況を表示するには、crontabコマンドに-lオプションを付けて実行します。
crontabをcrontabファイルで設定するには、crontabコマンドに続けてcrontabファイルのパスを指定します。
crontabの設定をクリアするには、crontabコマンドに-rオプションを付けて実行します。
実行後、crontabの設定は全て削除されます。
crontabファイルのフォーマット:
1行で1コマンドを設定します。
{分} {時} {日} {月} {曜日} {実行するコマンド}\n
分は、0-59
時は、0-23
日は、1-31
月は、1-12
曜日は、0-6 (0は日曜日、1は月曜日、、、6は土曜日)
時間の各フィールドには、
複数値の指定(,)で区切る(例 1, 3, 5)
範囲指定(-)で指定(例 1-5)
できます。
(*)は、全ての値を表します。
行の先頭に(#)を付けるとコメント文となります。
例:
30 12 1 * * gzip /logs/log.txt
(毎月1日の12時30分に/logs/log.txtをgzipで圧縮する)
cronを使うには、crontabを設定します。
crontabの設定方法をメモしておきます。
crontabの設定状況を表示するには、crontabコマンドに-lオプションを付けて実行します。
$ crontab -l
crontabをcrontabファイルで設定するには、crontabコマンドに続けてcrontabファイルのパスを指定します。
$ crontab crontabfile.txt
crontabの設定をクリアするには、crontabコマンドに-rオプションを付けて実行します。
実行後、crontabの設定は全て削除されます。
$ crontab -r
crontabファイルのフォーマット:
1行で1コマンドを設定します。
{分} {時} {日} {月} {曜日} {実行するコマンド}\n
分は、0-59
時は、0-23
日は、1-31
月は、1-12
曜日は、0-6 (0は日曜日、1は月曜日、、、6は土曜日)
時間の各フィールドには、
複数値の指定(,)で区切る(例 1, 3, 5)
範囲指定(-)で指定(例 1-5)
できます。
(*)は、全ての値を表します。
行の先頭に(#)を付けるとコメント文となります。
例:
30 12 1 * * gzip /logs/log.txt
(毎月1日の12時30分に/logs/log.txtをgzipで圧縮する)
コメント 0