cron の構文をちょいちょい忘れるので基本的なとこだけメモしておく。
cron の構文
一番基本的なやつ
一番基本的なやつ。
- 5つのフィールドをスペースで区切って指定する
- フィールドは左から分・時・日・月・曜日を指定する
指定できる範囲はこんな感じ。フィールドによって 0 始まりだったり 1 始まりするので気にしておく。
フィールド | 範囲 |
---|---|
分 | 0-59 |
時 | 0-23 |
日 | 1-31 |
月 | 1-12 または JAN-DEC |
曜日 | 0-6 または SUN-SAT |
演算子
フィールドは時刻を表す数値だけじゃなくていくつかの演算子が使える。
演算子 | 説明 | 例 |
---|---|---|
* | 任意の値 | * * * * * 毎日、毎分実行する |
, | 値リストの区切り文字 | 2,10 4 * * * 毎日、午前4時2分と午前4時10分に実行する |
- | 値の範囲 | 0 4-6 * * * 毎日、午前4時0分、午前5時0分と午前6時0分に実行する |
/ | ステップ値 | 20/15 * * * * 毎日、20分から59分までの間で15分おきに実行する (20分、35分、50分) |
実行する時間の書き方の例
実行する日時 | フィールドの記載 | 説明 |
---|---|---|
毎分 | * * * * * |
毎分実行する |
2分ごと | */2 * * * * |
2分ごとに実行する |
1時間ごと | 0 * * * * |
1時間ごとに0分に実行する |
2時間ごと | 0 */2 * * * |
2時間ごとに0分に実行する |
10時から17時までの範囲で1時間ごと | 0 10-17 * * * |
10時から17時の間は1時間ごとに0分に実行する |
毎日 | 0 0 * * * |
毎日0時0分に実行する |
2日ごと | 0 0 */2 * * |
2日ごとに0時0分に実行する |
日曜日 | 0 0 * * SUN |
日曜日の0時0分に実行する |
平日 | 0 0 * * MON-FRI |
月曜日から金曜日の間は0時0分に実行する |
毎月 | 0 0 1 * * |
毎月1日の0時0分に実行する |
2ヶ月ごと | 0 0 1 */2 * |
2ヶ月ごとに1日の0時0分に実行する |