AWS EventBridge の cron を crontab に変換
AWS EventBridge のフィールドは cron(分 時 日 月 曜日 年)、crontab は 分 時 日 月 曜日 です。式を貼り付けると変換します。正確に対応しない部分は理由と代替案を示します。
変換先 · crontab変換不可
日: crontab には「月末」がありません。月末は 28 日から 31 日まで変わるため、固定の日付では一致しません。
代替案28〜31 日に実行し、翌日が 1 日でなければ終了します。GNU date が必要です。crontab では % を \% と書きます。
これだけでは同等になりません。ジョブ内での判定が必要です。0 0 28-31 * * [ "$(date -d tomorrow +\%d)" = "01" ] && /path/to/job
他のプラットフォームでの同じスケジュール
GitHub Actions変換不可
日: GitHub Actions には「月末」がありません。月末は 28 日から 31 日まで変わるため、固定の日付では一致しません。
代替案28〜31 日に実行し、翌日が 1 日でなければ終了します。GNU date が必要です。crontab では % を \% と書きます。
これだけでは同等になりません。ジョブ内での判定が必要です。0 0 28-31 * * # job: [ "$(date -d tomorrow +%d)" = "01" ] || exit 0
GitHub で実行が遅れる? 定刻に起動する →
Kubernetes変換不可
日: Kubernetes には「月末」がありません。月末は 28 日から 31 日まで変わるため、固定の日付では一致しません。
代替案28〜31 日に実行し、翌日が 1 日でなければ終了します。GNU date が必要です。crontab では % を \% と書きます。
これだけでは同等になりません。ジョブ内での判定が必要です。0 0 28-31 * * # job: [ "$(date -d tomorrow +%d)" = "01" ] || exit 0
Spring同等
0 0 0 L * *Quartz同等
0 0 0 L * ?次の 10 回の実行
ブラウザで計算- 計算中…
AWS EventBridge と crontab の違い
| AWS EventBridge | crontab | |
|---|---|---|
| フィールド | cron(分 時 日 月 曜日 年) | 分 時 日 月 曜日 |
| 日曜日 | 1(SUN=1 … SAT=7) | 0 または 7 |
| 日と曜日の両方を指定 | 一方は ? が必須 | どちらか一致。一方が * で始まると両方一致 |
| 特殊文字 | L W #(# は 1 つ) | なし |
| 短縮形 | なし。間隔は rate() | @reboot @yearly @monthly @weekly @daily @hourly |
| タイムゾーン | Scheduler で IANA 名、既定は UTC | システムのタイムゾーン。cronie は CRON_TZ= |
| 最短間隔 | 1 分 | 1 分 |
よく使うスケジュールの変換結果
| AWS EventBridge | crontab | |
|---|---|---|
| 5 分ごと | cron(0/5 * * * ? *) | */5 * * * * |
| 1 時間ごと | cron(0 * * * ? *) | 0 * * * * |
| 毎分 | cron(* * * * ? *) | * * * * * |
| 10 分ごと | cron(0/10 * * * ? *) | */10 * * * * |
| 15 分ごと | cron(0/15 * * * ? *) | */15 * * * * |
| 30 分ごと | cron(0/30 * * * ? *) | */30 * * * * |
| 毎日 0 時 | cron(0 0 * * ? *) | 0 0 * * * |
| 毎日 9 時 | cron(0 9 * * ? *) | 0 9 * * * |
| 平日 9 時 | cron(0 9 ? * 2-6 *) | 0 9 * * 1-5 |
| 毎週月曜日 | cron(0 0 ? * 2 *) | 0 0 * * 1 |
| 毎月 1 日 | cron(0 0 1 * ? *) | 0 0 1 * * |
| 6 時間ごと | cron(0 0/6 * * ? *) | 0 */6 * * * |
| 毎週日曜日 0 時 | cron(0 0 ? * 1 *) | 0 0 * * 0 |
| 2 時間ごと | cron(0 0/2 * * ? *) | 0 */2 * * * |
| 12 時間ごと | cron(0 0/12 * * ? *) | 0 */12 * * * |
| 毎日 12 時 | cron(0 12 * * ? *) | 0 12 * * * |
| 毎週金曜日 | cron(0 0 ? * 6 *) | 0 0 * * 5 |
| 毎月末日 | cron(0 0 L * ? *) | 変換不可 |
| 四半期ごと | cron(0 0 1 1/3 ? *) | 0 0 1 */3 * |
| 2 分ごと | cron(0/2 * * * ? *) | */2 * * * * |
| 3 時間ごと | cron(0 0/3 * * ? *) | 0 */3 * * * |
| 毎日 6 時 | cron(0 6 * * ? *) | 0 6 * * * |
| 毎日 18 時 | cron(0 18 * * ? *) | 0 18 * * * |
| 1 日 2 回 | cron(0 0/12 * * ? *) | 0 */12 * * * |
| 平日 18 時 | cron(0 18 ? * 2-6 *) | 0 18 * * 1-5 |
| 週末 10 時 | cron(0 10 ? * 1,7 *) | 0 10 * * 0,6 |
| 毎月 15 日 | cron(0 0 15 * ? *) | 0 0 15 * * |
| 毎月第 1 月曜日 | cron(0 9 ? * 2#1 *) | 変換不可 |
| 毎月最終金曜日 | cron(0 17 ? * 6L *) | 変換不可 |
| 年 1 回 | cron(0 0 1 1 ? *) | 0 0 1 1 * |
| 3 分ごと | cron(0/3 * * * ? *) | */3 * * * * |
| 20 分ごと | cron(0/20 * * * ? *) | */20 * * * * |
| 4 時間ごと | cron(0 0/4 * * ? *) | 0 */4 * * * |
| 8 時間ごと | cron(0 0/8 * * ? *) | 0 */8 * * * |
| 毎日 1 時 | cron(0 1 * * ? *) | 0 1 * * * |
| 毎日 2 時 | cron(0 2 * * ? *) | 0 2 * * * |
| 毎日 3 時 | cron(0 3 * * ? *) | 0 3 * * * |
| 毎日 8 時 | cron(0 8 * * ? *) | 0 8 * * * |
| 毎平日 | cron(0 0 ? * 2-6 *) | 0 0 * * 1-5 |
| 毎週末 | cron(0 0 ? * 1,7 *) | 0 0 * * 0,6 |
| 毎週火曜日 | cron(0 0 ? * 3 *) | 0 0 * * 2 |
| 毎週水曜日 | cron(0 0 ? * 4 *) | 0 0 * * 3 |
| 毎週木曜日 | cron(0 0 ? * 5 *) | 0 0 * * 4 |
| 毎週土曜日 | cron(0 0 ? * 7 *) | 0 0 * * 6 |
| 6 か月ごと | cron(0 0 1 1/6 ? *) | 0 0 1 */6 * |
よくある質問
AWS EventBridge の式はすべて crontab に変換できますか?
すべてではありません。このページの 45 件のうち 42 件が同等に変換できます。残りは代替案が必要で、変換ツールが表示します。
AWS EventBridge と crontab で日曜日はどう書きますか?
AWS EventBridge:1(SUN=1 … SAT=7)。crontab:0 または 7。
タイムゾーンも引き継がれますか?
式自体にはタイムゾーンがありません。AWS EventBridge:Scheduler で IANA 名、既定は UTC。crontab:システムのタイムゾーン。cronie は CRON_TZ=。