Cron Expression
Next 5 Runs JST / Asia-Tokyo
    Presets
    Common Pitfalls — よくある間違い
    1文字違いで意味が変わる、cron式の落とし穴。左右を見比べてください。
    「N分おき」と「毎時N分」
    */30 * * * *30分おき(0分と30分 = 1時間に2回)
    30 * * * *毎時30分(1時間に1回)
    「N時間おき」で分を忘れる
    0 */3 * * *3時間おきの 0分(0,3,6,9… 時)
    */3 * * * *3分おきで発火。`0 */3` と書き忘れた事故の典型
    平日指定:曜日と日付の位置ミス
    0 9 * * 1-5平日の9時(曜日=1〜5)
    0 9 1-5 * *毎月 1〜5日 の9時(曜日無関係)
    日付と曜日を両方指定すると OR
    0 0 1 * 0毎月1日 or 毎週日曜の0時(両方指定=OR判定)
    0 0 1 * *毎月1日のみ(AND にしたい場合は曜日を `*` に)
    タイムゾーン
    0 0 * * *"0時" とは? — サーバの TZ 次第(UTCなら JST 9時)
    TZ=Asia/Tokyo 0 0 * * *crontab 先頭で明示するのが安全
    注記 標準的な 5 フィールド cron(分・時・日・月・曜日)に対応。* */n a-b a,b,c の組み合わせを想定。@yearly @monthly @weekly @daily @hourly のショートハンドも解釈します。秒単位・L(月末)・W(平日最寄り)など Quartz系拡張は未対応。

    cron は小さいけれど、事故は大きい。

    設計時にcron式で楽をすると、深夜バッチの重複実行や抜け落ちで冷や汗をかくことに。小さなツールでも、スケジューラの挙動はテストしながら組むのが結局安い。