Cron スケジュール
「cron」 スケジュールは、6 つまたは 7 つのサブフィールドで構成され、これらのサブフィールドは、ロボットを実行するタイミングを記述します。サブフィールドを 1 つまたは複数のスペースで区切って、以下の項目を記述します。
- 秒
- 分
- 時
- 日
- 月
- 曜日
- 年 (オプション フィールド)
Cron スケジュールの完全形の例は「0 0 12 ? * WED」で、これは「毎水曜日の午後 12:00」を意味します。
個々のサブフィールドには範囲やリストを含めることができます。たとえば、前述の例の [曜日] フィールド (つまり、「WED」) は「MON-FRI」、「MON, WED, FRI」、または「MON-WED,SAT」などに置き換えることもできます。
また、「このフィールドで可能なすべての値」を意味するワイルドカード (「*」文字) を使用することもできます。たとえば、前述の例の [月] フィールド内で「*」文字を使用した場合は、「毎月」という意味になります。[曜日] フィールド内で「*」文字を使用した場合は、「ある週のすべての日」という意味になります。
各フィールドに対する一連の有効値は、次のようになります。
- 秒:0~59 の数。
- 分:0~59 の数。
- 時:0~23 の数。
- 日:1~31 の数 (該当する月の日数を考慮)。
- 月:1~12 の数、または文字列 JAN、FEB、MAR、APR、MAY、JUN、JUL、AUG、SEP、OCT、NOV、および DEC。
- 曜日:1~7 の数 (1 は日曜日)、または文字列 SUN、MON、TUE、WED、THU、FRI、および SAT。
- 年:数。
さらに、以下のような特殊文字も使用できます。
|
定義 |
|
|---|---|
|
/ |
値にインクリメントを指定します。たとえば、[分] フィールドに「0/15」と入力すると、「0 分から開始して 15 分ごと」という意味になります。[分] フィールドに「3/20」と入力すると、「1 時間のうちの、3 分から開始して 20 分ごと」という意味になります。つまり、「3、23、43」を指定した場合と同じことになります。 |
|
? |
[日] フィールドおよび [曜日] フィールドにのみ使用でき、「指定値なし」を意味します。これら 2 つのフィールドのうち一方に何かを指定する必要があり、他方には不要な場合に便利です。詳細は、下の各例を参照してください。 |
|
L |
日フィールドおよび曜日フィールドに限り使用できます。「L」は「last」の省略形ですが、その意味は 2 つのフィールド間で異なります。 たとえば、[日] フィールドの「L」は「その月の最後の日」を意味し、1 月では 31 日、うるう年以外の年の 2 月では 28 日になります。 L を [曜日] フィールドで単独で使用した場合は「7」または「SAT」を意味しますが、[曜日] フィールド内で別の値の後に使用した場合、「その月の最後の曜日」を意味します。たとえば、「6L」または「FRIL」はどちらも「その月の最後の金曜日」を意味します。 「L」という文字を使用する場合は、混乱を招く原因となるため、リストや値の範囲を指定しないようにしてください。 |
|
# |
その月の「第 n 番目」の曜日を指定する場合に、[曜日] フィールドで使用します。たとえば、「6#3」または「FRI#3」という値は、「その月の第 3 金曜日」を意味します。 |
|
W |
その日に一番近い平日 (月曜~金曜) を指定します。たとえば、[日] フィールドの値として「15W」を指定した場合、これは「その月の 15 日に最も近い平日」という意味になります。 |
例
|
Cron スケジュール |
説明 |
|---|---|
|
0 0 12 * * ? |
毎日午後 12 時 (正午) に作動 |
|
0 15 10 ? * * |
毎日午前 10:15 に作動 |
|
0 15 10 * * ? |
毎日午前 10:15 に作動 |
|
0 15 10 * * ? * |
毎日午前 10:15 に作動 |
|
0 15 10 * * ? 2005 |
2005 年中は毎日午前 10:15 に作動 |
|
0 * 14 * * ? |
毎日午後 2 時から午後 2:59 までの間、毎分作動 |
|
0 0/5 14 * * ? |
毎日午後 2 時から午後 2:55 までの間、5 分毎に作動 |
|
0 0/5 14,18 * * ? |
午後 2 時から午後 2:55 までの間、5 分毎に作動 および、毎日午後 6 時から午後 6:55 までの間、5 分毎に作動 |
|
0 0-5 14 * * ? |
毎日午後 2 時から午後 2:05 までの間、毎分作動 |
|
0 10,44 14 ? 3 WED |
3 月の毎水曜日の午後 2:10 および午後 2:44 に作動。 |
|
0 15 10 ? * MON-FRI |
毎週月曜日、火曜日、水曜日、木曜日、および金曜日の午前 10:15 に作動 |
|
0 15 10 15 * ? |
毎月 15 日の午前 10:15 に作動 |
|
0 15 10 L * ? |
毎月最終日の午前 10:15 に作動 |
|
0 15 10 ? * 6L |
毎月最終金曜日の午前 10:15 に作動 |
|
0 15 10 ? * 6L |
毎月最終金曜日の午前 10:15 に作動 |
|
0 15 10 ? * 6L 2002-2005 |
2002、2003、2004、および 2005 年の毎月最終金曜日の午前 10:15 に作動 |
|
0 15 10 ? * 6#3 |
毎月第 3 金曜日の午前 10:15 に作動 |