cron式の組み立て
Cron Builder
cron式を、許容範囲が添えられた入力欄にフィールドごとに打ち込んで組み立て、変えるたびに出来上がるスケジュールを見せます。
cron式をフィールドごとに組み立てます。それぞれのフィールドの範囲と意味が横に出て、次の実行が入力に合わせて更新されます。フィールドを編集できるようにした、読み解きのツールと同じ画面です。組み立てることと読むことは、同じ問題を2つの方向から見たものだからです。
式
欄は五つ、または先頭に秒を足した六つです。`@daily` や `@hourly` などの表記も使えます。
言葉にすると
月曜日から金曜日まで09:00に実行します。
欄ごとに組み立てる
| 欄 | 値 | 意味 |
|---|---|---|
| 分0-59 | 0分`*/15` は15分ごと、`15` は毎時15分です。 | |
| 時0-23 | 9時常に24時間制で、スケジューラーが別に定めないかぎりサーバーのタイムゾーンです。 | |
| 日1-31 | 毎日`L` は最終日です。31 は日数の少ない月にはそのまま実行されません。 | |
| 月1-12 または JAN-DEC | 毎月名前は大文字小文字を区別しません。 | |
| 曜日0-7 または SUN-SAT | 月曜日から金曜日まで0 も 7 も日曜です。`5#3` は第3金曜、`5L` は最後の金曜です。 |
次の実行
タイムゾーン
UTC
ブラウザではなく、上で選んだタイムゾーンで計算します。夏時間が飛ばす壁時計の時刻は、ここでも飛ばします。
使い方
プリセットから始めます
毎時、毎日3時、平日の9時、毎月1日、月の最終日。ほとんどのスケジュールは、このどれかから1回の編集で届きます。
必要なフィールドを編集します
フィールドごとに専用の欄があり、名前の下に許される範囲が出ます。上にある普通の言葉での1文は、入力に合わせて自分を書き換えます。
次の実行と突き合わせて確かめます
自分のではなく、スケジューラが使うタイムゾーンで見ます。正しそうに見えるのに違う時刻に走るスケジュールは、ほとんど常にフィールドの間違いではなくタイムゾーンです。
よくある質問
90分ごとに実行するにはどうすればいいですか
1つの式ではできません。cronのフィールドは互いに独立しているので、分の`*/90`は不正ですし、1時間を割り切らない周期を表す方法はありません。式を2つ書くか、間隔を指定できるスケジューラを使うのが答えです。
秒のフィールドを足すべきですか
スケジューラが6つのフィールドを求めるときだけです。QuartzとSpringは求めますが、Unixのcronは求めませんし、そうした式は拒否します。ここのボタンで足したり外したりできるので、同じスケジュールの2つの書き方を見比べられます。
31が2月に実行されないのはなぜですか
2月31日が存在しないからです。cronは月末に丸めるようなことはせず、単に一致しません。`L`が「月の最終日」を意味する拡張で、スケジューラが対応していれば使えます。
ここから渡せます
次の一手
このツールが出したものをそのまま受け取れる道具です。
cron式の読み解き
Cron Parser
cron式を普通の言葉に開いて説明し、選んだタイムゾーンでの次の実行時刻を並べます。
Kubernetes Secretのデコード
Kubernetes Secret Decoder
Secretマニフェストの中のBase64値をすべて復号し、書き換えたものを適用できる形に符号化し直します。
タイムゾーン変換
Timezone Converter
ある時刻を複数のタイムゾーンに変換し、会議を組みやすい重なり時間帯を表で示します。
Base64エンコード・デコード
Base64 Encoder & Decoder
テキストでもファイルでもBase64とBase64URLを符号化・復号し、UTF-8も正しく扱います。
curlをコードに変換
curl to Code
curlのコマンドをfetch・axios・Pythonのrequests・Go・PHP・PowerShellのコードに変換します。
文字列のハッシュ
Text Hash
文字列のMD5・SHA-1・SHA-256・SHA-384・SHA-512・CRC-32を計算し、大文字表記とBase64での出力も選べます。