使い方
- 式を入力するか貼り付けます(例:0 9 * * 1-5)。
- わかりやすい説明と各フィールドの値を確認します。
- サーバーのタイムゾーンを選ぶと、実際に実行される次回 10 回分の日時が表示されます。
- 右側の「例」をクリックすると、よく使うスケジュールから始められます。
オプションの説明
- フィールド
- 分、時、日、月、曜日の 5 つです。先頭に 6 つ目のフィールドを加えると秒を指定できます(Spring、Quartz、node-cron で使用)。
- 特殊文字
- * は任意の値、, はリスト(1,15)、- は範囲(1-5)、/ は間隔(*/10 = 10 ごと)。Quartz では日・曜日のフィールドで「特定の値なし」を表すのに ? を使います。
- 曜日
- 0 または 7 が日曜日、1 が月曜日です。MON-FRI のような英語名も使えます。
- タイムゾーン
- cron はサーバーのタイムゾーンで動きます。クラウドサーバーでは通常 UTC です。ここで選ぶと、夏時間の切り替えも含めて、ジョブが実際に実行される日時がわかります。
よく使うスケジュール
| 式 | 実行タイミング |
|---|---|
* * * * * |
毎分 |
*/15 * * * * |
15 分ごと |
0 * * * * |
毎時 0 分 |
0 9 * * 1-5 |
平日の 09:00 |
30 2 * * * |
毎日 02:30 |
0 0 * * 0 |
毎週日曜日の 0 時 |
0 0 1 * * |
毎月 1 日の 0 時 |
0 0 1 1 * |
1 月 1 日の 0 時 |
よくある質問
*/5 * * * * はどういう意味ですか?
5 分ごとです。毎時 0 分、5 分、10 分…に実行されます。
ジョブが想定と違う時刻に実行されたのはなぜですか?
多くの場合、サーバーは UTC で動いているのに、スケジュールを日本時間などのローカル時刻で書いたことが原因です。上で UTC を選んで実際の実行日時を確認するか、スケジューラーが対応していればジョブに CRON_TZ / TZ を設定してください。
日と曜日の両方を指定するとどうなりますか?
標準の cron では、両方を指定すると(例:0 0 1 * 1)どちらか一方に一致したときに実行されます。つまり毎月 1 日と毎週月曜日です。Quartz ではどちらかに ? を指定する必要があるため、この問題は起きません。
Kubernetes の CronJob や GitHub Actions の schedule にも使えますか?
はい。どちらも標準の 5 フィールドの cron を使います。GitHub Actions のスケジュールはデフォルトで UTC で評価されます。
プライバシー
このツールはすべてブラウザ内で動作します。ファイルやテキストはお使いの端末上で処理され、当サイトのサーバーにアップロードされることはありません。