Cron式パーサー

標準5フィールドの cron 式を検証し、人が読みやすい説明に変換できます。`*`, `,`, `-`, `/`, 月・曜日名、`@daily` などのマクロをサポートします。

このツールは標準的な5フィールド crontab (`minute hour day-of-month month day-of-week`) を対象にしています。Quartz系の秒・年フィールドはサポートしません。

day-of-month と day-of-week を同時に制限した場合、cron 実装によって動作差が出ることがあります。人が確認しやすい明確な式にするのが安全です。
式は有効です。下で人が読みやすい解釈を確認できます。

よく使う例

解釈サマリー

一行要約15分ごと
スケジュール種別カスタムスケジュール
正規化された式*/15 * * * *

フィールド別の意味

全範囲で 15 間隔*/15
すべての値*
すべての値*
すべての値*
曜日すべての値*

対応文法

`*` ワイルドカードそのフィールドのすべての値を意味します。
`,` リスト複数の値を同じフィールドに並べられます。
`-` 範囲例: `1-5` は連続した範囲です。
`/` ステップ例: `*/15` は全範囲で15刻みを意味します。
月/曜日名`JAN` や `MON-FRI` のような省略名を使えます。
マクロ`@hourly`, `@daily`, `@weekly`, `@monthly`, `@yearly` に対応します。

Cron式パーサーガイド

Cron式は、サーバー作業、バッチ、バックアップ、レポート送信、キャッシュ削除などの定期実行を表す代表的な記法です。ただし `*/15`, `1-5`, `MON-FRI`, `@daily` のような短い記法は、後から読み返すと意味を取り違えやすくなります。このツールは、式が有効かを先に確認し、その後で各フィールドを人が読みやすい形に変換することに重点を置いています。

こんな場面で便利です

  • 本番デプロイ前に crontab の式を再確認したいとき
  • チームメンバーが書いた cron が実際にどう動くかを素早く読みたいとき
  • レポート送信やバックアップ、定期ジョブの予定時刻を文書化したいとき
  • day-of-month と day-of-week を同時に使う危険な式を見直したいとき

よくあるミス

  • Quartz の 6/7フィールド記法と標準 5フィールド cron を混同する
  • `*/2` と `1-31/2` の違いを意識せず使ってしまう
  • 曜日数字の `0` と `7` がどちらも日曜になることを忘れる
  • サーバーのタイムゾーンとローカルの解釈を同じだと思い込む

day-of-month と day-of-week の注意点

多くの cron 実装では、`day-of-month` と `day-of-week` を両方制限すると、厳密な AND より OR に近い動きをすることがあります。たとえば `0 12 1 * 1-5` は『毎月1日か平日』のように、想定より多く実行される可能性があります。重要なジョブでは条件を単純にするか、式を分ける方が安全です。

関連する開発者ツール

タイムスタンプ変換器

cron の実行時刻を UTC やローカル時刻で比較したいときに便利です。

JSONフォーマッター

バッチ設定ファイルやスケジューラの JSON を整形・検証したいときに役立ちます。

JWTデコーダー

トークン更新や認証関連の定期ジョブを一緒に確認するときによく合います。

よくある質問

標準的な5フィールド crontab 形式 (minute, hour, day-of-month, month, day-of-week) に対応しています。Quartz の秒や年フィールドには対応していません。
はい。`@hourly`, `@daily`, `@weekly`, `@monthly`, `@yearly` などの一般的なマクロをサポートし、内部では5フィールド式に展開して表示します。
多くの cron 環境では、0 と 7 の両方が日曜日を表します。このツールでもその慣例に沿って解釈します。
現在のバージョンは、式の検証と人が読める解釈に集中しています。次回実行時刻の計算は今後の拡張候補です。