Cron 式は、Unix/Linux システムで定期的なタスクを定義するために使用されます。Cron 式は、異なる時間単位を表す 5 つまたは 6 つのフィールドで構成されます。
README.md
* * * * * *
- - - - - -
| | | | | |
| | | | | +---- 曜日 (0 - 7) (0 または 7 は日曜日を表します)
| | | | +------ 月 (1 - 12)
| | | +-------- 日 (1 - 31)
| | +---------- 時 (0 - 23)
| +------------ 分 (0 - 59)
+-------------- 秒 (0 - 59)
フィールドの説明
- 秒 (0 - 59):毎分のどの秒にタスクを実行するかを指定します。
- 分 (0 - 59):毎時のどの分にタスクを実行するかを指定します。
- 時 (0 - 23):毎日のどの時にタスクを実行するかを指定します。
- 日 (1 - 31):毎月のどの日にタスクを実行するかを指定します。
- 月 (1 - 12):毎年のどの月にタスクを実行するかを指定します。
- 曜日 (0 - 7):毎週のどの日にタスクを実行するかを指定します(0 または 7 は日曜日を表します)。
特殊文字
- *:すべての可能な値を表します。たとえば、分フィールドで * を使用すると毎分実行されます。
- ,:値のリストを表します。たとえば、時フィールドで 1,2,3 を使用すると、1 時、2 時、3 時に実行されます。
- -:値の範囲を表します。たとえば、日フィールドで 1-5 を使用すると、1 日から 5 日まで実行されます。
- /:ステップ値を表します。たとえば、分フィールドで */5 を使用すると、5 分ごとに実行されます。
- ?:日フィールドと曜日フィールドでのみ使用でき、特定の値を指定しないことを意味します。
- L:日フィールドと曜日フィールドでのみ使用でき、最後の日を意味します。たとえば、日フィールドで 5L を使用すると、毎月の最後の日に実行されます。
- W:日フィールドでのみ使用でき、最も近い平日を意味します。たとえば、日フィールドで 5W を使用すると、最も近い 5 日の平日に実行されます。
- #:曜日フィールドでのみ使用でき、特定の曜日の第何回目かを意味します。たとえば、曜日フィールドで 6#3 を使用すると、毎月の第 3 金曜日に実行されます。
- 曜日:曜日フィールドで略語(SUN, MON, TUE, WED, THU, FRI, SAT)を使用して曜日を指定します。
- 月:月フィールドで略語(JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC)を使用して月を指定します。
特殊文字列
- @reboot:システム起動時に実行します。
- @yearly または @annually:毎年 1 回実行します。0 0 1 1 * に相当します。
- @monthly:毎月 1 回実行します。0 0 1 * * に相当します。
- @weekly:毎週 1 回実行します。0 0 * * 0 に相当します。
- @daily または @midnight:毎日 1 回実行します。0 0 * * * に相当します。
- @hourly:毎時 1 回実行します。0 * * * * に相当します。