WMW

Cron式ジェネレーター

Free

ライブフィールドエディタ、わかりやすい説明、実際の次の5回の実行時刻でcron式を作成・解析します。プリセット、@ショートカット、オプションの秒付き6フィールド形式に対応しています。

すべてブラウザ内で動作します。次回の実行時刻は、あなた自身のデバイスの時計とタイムゾーンを使って計算されます。

わかりやすい説明

次の5回の実行時刻

あなたのデバイスの現在の日付、時刻、タイムゾーンに基づいています。

    最近のアクティビティ

    全員に公開されています。すべての訪問者による直近20回の使用履歴を新しい順に表示します。

    まだアクティビティはありません。最初の一人になりましょう。

    コメント (0)

    このツールは役に立ちましたか?コメントを残したり、コツを共有したり、改善方法を教えてください。

    ゲストのコメントは公開前に確認されます。 ログイン すると即座に投稿できます。

    まだコメントはありません。最初にご意見をお寄せください!

    このツールの機能

    Cron式ジェネレーターは、Unix/Linuxのcron、GitHub Actions、KubernetesのCronJob、および類似のスケジューラーで使用されるcronスケジュールを作成し、説明します。式を直接編集するか、分/時/日の各フィールドを個別に入力すると、わかりやすい説明と、実際に実行される次の5回の時刻がすぐに表示されます。

    仕組み

    各フィールドは、一致する正確な値の集合に解析されます。*はフィールドの完全な範囲に展開され、N-MはNからMまでのすべての値に展開され、N-M/S(または*/S)はその範囲内のS番目ごとの値を保持し、カンマ区切りの項目はまとめて結合されます。ある日が一致するとみなされるのは、その日付が月フィールドを満たし、かつ日フィールドまたは曜日フィールドのいずれかを満たす場合です(どちらか一方が「*」のままなら両方を、両方が制限されていればどちらか一方を満たせばよい -- 標準的なcronのORルールです)。

    次の実行時刻を見つけるために、このツールは現在のローカル時刻から開始し、フィールドごとに先へジャンプしていきます -- 現在の月が条件を満たさなければ次に一致する月へ、月は問題ないが日が条件を満たさなければ次に一致する日へ、というように分(有効であれば秒も)まで進んでいきます。このフィールドごとのジャンプのおかげで、「2月29日のみ」のようなまれなスケジュールでも、間のすべての日を一つずつ確認することなく、次のうるう年まで瞬時に解決できます。

    解決できる問題

    よくある質問

    ›cron式の5つのフィールドはそれぞれ何を意味しますか?

    左から順に: 分(0-59)、時(0-23)、日(1-31)、月(1-12)、曜日(0-7、0と7はどちらも日曜日)です。従来のQuartz/Spring形式のスケジュールでは、一番最初に秒用の6番目のフィールドが追加されますが、このツールは「秒フィールドを含める」オプションでこれをサポートしています。

    ›なぜ「0 0 1,15 * 1」は、両方が一致したときだけでなく、毎週月曜日と毎月1日/15日の両方で実行されるのですか?

    これはバグではなく、cronのよく知られた仕様上の特徴です。日フィールドと曜日フィールドの両方が制限されている場合(「*」でない場合)、標準的なcronはこれらをANDではなくORとして扱います -- いずれかの条件が真であればジョブが実行されます。2つのフィールドのうち片方だけを制限し、もう一方を「*」のままにした場合は、制限されている方だけが適用されます。

    ›*/15はどういう意味で、0,15,30,45とはどう違うのですか?

    ここではまったく同じ値の集合(0、15、30、45)が生成されますが、*/Nはステップを表します。「フィールドの最小値から始まる、N番目ごとの値」という意味で、書くのが短く、Nを変更すると自動的にスケールします。0,15,30,45のような明示的なリストは意味は同じですが、手で入力して編集する必要があります。

    ›「次の実行時刻」は自分のタイムゾーンで計算されますか?

    はい -- あなたのデバイスの現在の時計とタイムゾーンを使用し、すべてブラウザ内で計算されます。cronジョブが実際には異なるタイムゾーンのサーバーで実行される場合(UTCに設定されたクラウドサーバーでは非常によくあります)、実際の実行時刻は、あなたのタイムゾーンとサーバーのタイムゾーンの差の分だけずれます。

    ›@daily、@hourly、その他の@ショートカットとは何ですか?

    これらはcron、Vixie-cron、そしてほとんどの最新のスケジューラーでサポートされている一般的なエイリアスで、頻繁に使われる正確な式の省略形です。@yearlyと@annuallyはどちらも「0 0 1 1 *」、@monthlyは「0 0 1 * *」、@weeklyは「0 0 * * 0」、@dailyと@midnightは「0 0 * * *」、@hourlyは「0 * * * *」を意味します。式フィールドに直接入力すると自動的に展開されます。

    関連ツール