linux

Linuxで定期的にプログラムを実行できるcronの使い方



cronの設定方法を忘れてしまうのでメモ。

cronとは

「月」、「日」、「時」、「分」、「週」を設定して、指定されたコマンドを定期実行をしてくれるものです。

cronの編集方法

cronの編集コマンド
crontab [-u user] { -l | -r | -e } 
オプション
-u ユーザを指定する。省略時は現在のカレントユーザになる
-l 現在のcron設定を表示する
-r 現在のcron設定を削除する
-e 現在のcron設定を編集する。設定内容がない場合は新規作成する

以下のコマンドで現在ログイン中のカレントユーザのcronの設定を開きます。
crontab -e

cronの設定方法

cronの説明
# シャープはコメント
[分] [時 [日] [月] [曜日] [コマンド]
単位 指定可能範囲
0-59
0-23
0-31
1-12
曜日 0-6(0 = 日, 1 = 月, 2 = 火,3 = 水,4 = 木,5 = 金,6 = 土)

cronの設定例

cronの色々な設定方法のご紹介。

cronの基本形

# [分] [時 [日] [月] [曜日] [コマンド]
* * * * * [コマンド] # 1分毎に実行
# 日次実行
0 0 * * * [コマンド] # 0時0分に実行
# 週次実行
0 0 * * 1 [コマンド] # 毎週月曜 0時0分に実行
# 月次実行
0 0 1 * * [コマンド] # 毎月1日 0時0分に実行
# 年次実行
0 0 1 1 * [コマンド] # 毎年1月1日 0時0分に実行

cronの範囲指定、複数指定

cronは1つの値に[/]を使用すると間隔指定、[-]を使用すると範囲指定、「,」を使用して複数指定することが可能です。
# [分] [時 [日] [月] [曜日] [コマンド]
*/5 * * * * [コマンド] # 5分毎に実行
*/5 0-12 * * * [コマンド] # 0-12時のみ5分毎に実行
0 0 * * 0,6 [コマンド] # 日曜,土曜日のみ0時0分に実行

cronのログ

cronのログの出力先です。
正しく動いてないと思われる時は確認してみてください。
vi /var/log/cron

他にも以下のようにするとcronの標準出力先とエラーの出力先を指定出来ます。
* * * * * [コマンド]>>log.log 2>>errlog.log

簡単ですが以上、cronの簡単な使い方なメモです。


コメントを残す