Cron式ジェネレーター

Cronスケジュールを書けば、実行タイミングがすぐ分かります。

0-59
0-23
1-31
1-12またはJAN-DEC
0-6またはSUN-SAT(7も日曜)
At 09:00 AM, Monday through Friday

次の10回の実行

    Cron構文チートシート
    フィールド使用できる値
    分0-59
    時0-23
    日(月内)1-31
    月1-12またはJAN-DEC
    曜日0-6またはSUN-SAT(7も日曜)
    記号意味
    *すべての値
    ,1,15のような値のリスト
    -1-5のような範囲
    /*/15のような、15個おきを表すステップ

    ブラウザ内で動作します。入力した内容はどこにも送信されません。

    Cron式の書き方

    1. プリセットを選ぶか、5つのフィールドからなる式を入力します。
    2. 下のボックスで各フィールドを個別に調整します。
    3. 説明と次の実行時刻を確認し、式をコピーします。

    よく使うCronスケジュール

    スケジュール式意味
    毎分* * * * *1時間に60回実行
    5分ごと*/5 * * * *:00、:05、:10などのタイミング
    毎晩午前2時0 2 * * *24時間に1回
    平日午前9時0 9 * * 1-5月曜から金曜のみ
    毎月1日0 0 1 * *1日の0時
    6時間ごと0 */6 * * *0時、6時、12時、18時

    システムによるCronの違い

    下の5フィールド形式がこのジェネレーターで作成する形式であり、ほとんどのジョブスケジューラーがそのまま使う形式でもあります。

    システムフィールド数備考
    標準のcron / crontab5分、時、日、月、曜日
    Kubernetes CronJob5同じ形式、YAML内では文字列として指定
    GitHub Actions5on.schedule.cronで設定、常にUTCで実行
    Quartz(Java)6または7分の前に秒フィールドを追加
    AWS EventBridge6年フィールドを追加し、日か曜日のどちらかに?を使用

    ここで作った式をQuartzやAWSのスケジュールに貼り付け、それぞれが必要とする追加フィールドを付け加えてください。分・時・日・月・曜日の位置は変わりません。

    Cronスケジュールを書くコツ

    • 長いリストよりステップを使いましょう。*/15 * * * *は0,15,30,45 * * * *より短くて分かりやすくなります。
    • 日(月内)と曜日を両方指定しても、見た目ほど制限は厳しくなりません。標準のCronはどちらか一方が一致すれば実行され、両方が一致する必要はないためです。
    • サーバーに貼り付ける前にここでスケジュールをテストしましょう。1つのフィールドの間違いで、毎日のジョブが毎分実行されるジョブに変わってしまうことがあります。
    • サーバーは通常UTCでCronを実行します。上の実行予定リストはあなたのタイムゾーンで表示されるため、ジョブが予定通り動いたと判断する前に変換しておきましょう。

    Cron式ジェネレーターのFAQ

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

    左から順に、分(0-59)、時(0-23)、日(1-31)、月(1-12)、曜日(0-6、0が日曜)です。アスタリスクはすべての値を意味するので、* * * * *は毎分実行されます。

    Cronジョブを5分ごとに実行するには?

    */5 * * * *を使います。/5は5個おきを意味するので、毎時0分、5分、10分というように、毎日すべての時間で実行されます。

    日(月内)と曜日を両方指定するとどうなりますか?

    標準のCronでは、どちらか一方が一致すればジョブが実行されます。0 0 1 * 1は毎月1日の0時と、毎週月曜日の0時の両方で実行されます。

    Cronはどのタイムゾーンを使いますか?

    実行するサーバーのタイムゾーンで、多くの場合UTCです。このページの実行時刻はあなたのタイムゾーンで表示されるため、サーバーの設定が異なる場合は変換してください。

    この形式はKubernetes、GitHub Actions、Quartz、AWSでも使えますか?

    Kubernetes CronJobとGitHub Actionsのスケジュールは同じ5フィールド形式を使います。Quartzは秒フィールドが追加され、AWS EventBridgeは年フィールドが追加されて日のいずれかのフィールドに?を使うため、それぞれ調整が必要です。

    平日だけ、または週末だけジョブを実行するには?

    曜日を月〜金なら1-5に、土日なら0,6に設定します。日(月内)と月は*のままにして、それ以上の制限がかからないようにします。

    @dailyや@hourlyのようなショートカットは何を意味しますか?

    一部のCron実装が5フィールドの代わりに受け付けるマクロです。@hourlyは0 * * * *、@dailyは0 0 * * *、@weeklyは0 0 * * 0、@monthlyは0 0 1 * *、@yearlyは0 0 1 1 *です。このページの式の入力欄にどれかを入力すると自動的に展開されます。

    関連ツール