Cron 表達式解析器

把 cron 表達式翻成「每週一上午9點30分」這樣的中文說明,並以你的時區列出接下來 10 次執行時間。也可以用產生器逐欄組出表達式。

—

產生器(逐欄選擇)

欄位值意義

接下來 10 次執行時間

    什麼是Cron 表達式解析器?

    cron 是 Unix/Linux 在固定時間自動執行工作的排程器,像 30 9 * * 1 這樣由五個欄位組成的字串就是 cron 表達式。除了 crontab,GitHub Actions、Kubernetes CronJob、AWS EventBridge、Google Cloud Scheduler、Spring 的 @Scheduled 等也都使用相同語法。

    本工具會在你輸入的同時顯示中文說明和下次執行時間;如果有錯,也會告訴你是哪個欄位、為什麼錯。所有處理都在瀏覽器內完成。

    使用方法

    1. 在輸入框輸入 cron 表達式,或從常用排程中選擇。
    2. 在結果區查看中文說明和下次執行時間。
    3. 在產生器中逐一選擇分、時、日、月、星期,表達式會自動更新。
    4. 在最下方查看接下來 10 次執行時間(依瀏覽器時區計算)。

    cron 表達式結構

    順序欄位可用值
    1分0~59
    2時0~23
    3日1~31
    4月1~12 或 JAN~DEC
    5星期0~7(0 和 7 都是星期日)或 SUN~SAT

    輸入 6 個欄位時,第一個會當作秒(0~59)處理(Spring、Quartz 方式)。也支援 @daily、@weekly、@hourly 等巨集。

    特殊字元的意義

    符號意義範例結果
    *所有值* * * * *每分鐘
    ,列出多個值0 9,18 * * *上午9點、下午6點
    -範圍0 9 * * 1-5平日上午9點
    /間隔*/10 * * * *每10分鐘

    如果同時指定「日」和「星期」(例如 0 0 13 * 5),標準 cron 只要其中一個符合就會執行:不是只有 13 號星期五,而是每月 13 日和每週五都會執行,請特別注意。

    常見問題

    為什麼伺服器上的執行時間差了 8 小時?

    cron 會依照所在機器的時區執行。如果伺服器設定為 UTC,想在台灣時間上午 9 點執行,就要寫成 UTC 凌晨 1 點(0 1 * * *),或把 TZ 改成 Asia/Taipei。GitHub Actions 和 AWS EventBridge 一律使用 UTC。

    支援 L、W、# 語法嗎?

    不支援。月底(L)、最近的平日(W)、第 n 個星期幾(#)是 Quartz 等部分系統專用的語法,一般 crontab 無法使用,因此本工具會顯示為錯誤。

    下次執行時間是用哪個時區?

    依你的瀏覽器時區計算(顯示在清單旁)。台灣沒有日光節約時間,全年都以 UTC+8 計算。

    輸入 2 月 30 日這種不存在的日期會怎樣?

    語法上沒有錯,但實際上永遠不會執行,所以工具會提示未來 8 年內沒有執行時間。