cron式の読み解き
cron式をフィールドごとに読み解き、次に実行される日時を確認できます。
次回の実行
2026-10-09 17:30 UTC
15分ごと、09:00から17:59まで、月曜日から金曜日。
- 式
- */15 9-17 * * 1-5
- 頻度
- 実行日には1日36回
フィールドごと
| 分 | 0, 15, 30, 45 |
|---|---|
| 時 | 9–17 |
| 日 | すべて |
| 月 | すべて |
| 曜日 | 月–金 |
次回の実行
- 金 2026-10-09 17:30
- 金 2026-10-09 17:45
- 月 2026-10-12 09:00
- 月 2026-10-12 09:15
- 月 2026-10-12 09:30
- 月 2026-10-12 09:45
cron式を貼り付けると、各フィールドの意味と、実際に次に実行される日時を確認できます。日時は選んだタイムゾーンで表示されます。cronはあなたのタイムゾーンではなく、マシンのタイムゾーンで動くからです。
仕組み
5つのフィールドは、分、時、日、月、曜日です。それぞれ単一の値、リスト、範囲、ステップ、またはすべての値を表す`*`を指定できます。月と曜日の名前は数字と同じように使え、`@daily`などの略記はそれが表す式に展開されます。
実行日時は1日ずつ進めながら日付を日と曜日のフィールドと照合し、解析したリストから時と分を読み取って求めます。探索範囲は4年間で、うるう日がどの位置にあっても捉えられます。この範囲内で一度も一致しない式は、決して実行されない式として表示されます。
日曜日は0で、7もその別表記として受け付けます。どのcrontabも両方を受け付けてきました。
例
| ケース | 入力 | 結果 |
|---|---|---|
| 15分ごと、営業時間内のみ | */15 9-17 * * 1-5 | Every 15 minutes, between 09:00 and 17:59, from Monday to Friday. |
よくある質問
日と曜日の両方を指定したスケジュールが、思ったより頻繁に実行されるのはなぜですか?
cronはこの2つを「かつ」ではなく「または」で組み合わせるからです。両方が制限されている場合、どちらか一方に一致すれば十分です。`0 0 1 * 1`は毎月1日に*加えて*毎週月曜日にも実行されます。cronで最もよくある思い違いなので、このページはこの場合に警告を出します。
cronはどのタイムゾーンを使いますか?
マシンに設定されているタイムゾーンです。サーバーでは多くの場合UTCで、あなたのいるタイムゾーンであることはまれです。ここではあなたではなく、マシンに合わせてタイムゾーンを選んでください。また、時刻が切り替わる朝(夏時間の切り替え)には、実装によっては毎日のタスクが飛ばされたり2回実行されたりすることがあります。
`0 0 30 2 *`はどうなりますか?
何も起きません。決して実行されません。式としては有効ですが、2月に30日はありません。このツールは空の一覧を表示する代わりに、そのことをお知らせします。
秒は指定できますか?
いいえ。標準のcronは5つのフィールドからなり、秒のフィールドはありません。先頭に6つ目のフィールドを加えるスケジューラーもありますが、それは別の構文で、このツールでは誤って読んでしまいます。そのため、フィールドが5つでないものはすべて受け付けません。
知っておきたいこと
- 5フィールドのcrontab構文のみに対応しています。秒のフィールドや、`L`、`W`、`#`のような非標準の文字を加えるスケジューラーには対応しておらず、誤って読む代わりに受け付けません。
- 実行日時はカレンダーから計算しています。夏時間の切り替え時に個々のcronデーモンがどう動くかは実装に依存し、ここではモデル化していません。