*/15 9-17 * * 1-5 Cron 式パーサーで開く フィールドごとの解説
| フィールド | 値 | 該当 |
|---|---|---|
| 分 | */15 | 0, 15, 30, 45 |
| 時 | 9-17 | 9, 10, 11, 12, …, 17 |
| 日 | * | すべての値 |
| 月 | * | すべての値 |
| 曜日 | 1-5 | 月曜日火曜日水曜日木曜日金曜日 |
次回の実行時刻
例:2026年1月1日 以降の最初の 6 回(UTC)。
- 2026年1月1日(木) 09:00
- 2026年1月1日(木) 09:15
- 2026年1月1日(木) 09:30
- 2026年1月1日(木) 09:45
- 2026年1月1日(木) 10:00
- 2026年1月1日(木) 10:15
そのまま使える書き方
*/15 9-17 * * 1-5 /path/to/command crontab -e でこの行を追加します。CRON_TZ や TZ を設定しない限り、サーバーのタイムゾーンで実行されます。
apiVersion: batch/v1
kind: CronJob
metadata:
name: every-15-minutes-during-business-hours
spec:
schedule: "*/15 9-17 * * 1-5"
timeZone: "Etc/UTC"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
spec:
restartPolicy: OnFailure
containers:
- name: job
image: busybox:1.36
command: ["/bin/sh", "-c", "date; echo run"] spec.timeZone を設定してください(Kubernetes 1.27 以降)。未設定の場合は controller manager のタイムゾーン(通常 UTC)に従います。
on:
schedule:
- cron: '*/15 9-17 * * 1-5'
workflow_dispatch: GitHub Actions は常に UTC を使い、間隔は最短 5 分です。混雑時は開始が遅れることがあります。
0 */15 9-17 ? * MON-FRI Quartz は先頭に秒を置き、日か曜日のどちらかに ? が必要です。曜日は日曜始まりの 1〜7 なので、英語の略称を使うほうが安全です。
@Scheduled(cron = "0 */15 9-17 * * MON-FRI") Spring の @Scheduled(cron = …) は 6 フィールド:秒と通常の 5 フィールドです。
よくある質問
› ちょうど 17:00 で止めるには?
1 行の cron では時間の途中で終われません。*/15 9-16 * * 1-5 に加えて 0 17 * * 1-5 をもう 1 行書きます。
› */15 9-17 * * 1-5 はどのタイムゾーンで実行されますか?
Cron は実行するマシンやサービスのタイムゾーンを使います。Linux では CRON_TZ や TZ を設定しない限りシステムのタイムゾーン、Kubernetes の CronJob は spec.timeZone で指定でき、GitHub Actions は常に UTC です。
› デプロイ前にスケジュールを確認するには?
このサイトの Cron 式パーサーで */15 9-17 * * 1-5 を開いてください。各フィールドを解説し、今後の実行時刻をローカル時刻または UTC で一覧表示します。処理はすべてブラウザー内です。