Cron 表達式解析
以標準 5 段 Cron 計算未來 N 次執行時間
輸入五段 Cron,選定時區和條數後計算。這裡預覽時間,不會創建、執行或托管定時任務。
輸入 Cron 表達式,計算後續運行時間。
範例
輸入
*/15 9-17 * * 1-5
示例結果
09:00, 09:15, 09:30, 09:45, …, 17:45
表示所選時區週一至週五、9 點至 17 點每隔 15 分鐘;17:45 仍在範圍內。
技術細節與邊界
字段順序為分、時、日、月、周,不包含秒或年份。0 和 7 都表示星期日;當日與周都受限制時採用“或”匹配。僅支持數字及 * / , -,不支持 Quartz 的 ? L W # 和月份英文縮寫。結果從起點之後的下一分鐘開始搜索,最多返回 20 次並搜索 8 年。
關於此工具
解析標準五字段 Cron,並按選擇的時區列出後續運行時間、ISO 8601 表示和 Unix 秒。支持通配符、步長、列表和範圍,適合核對工作日任務及週期計劃。
適用場景
- 寫好一條 crontab 後,看看未來幾次會在哪個時間點觸發。
- 排查某個 job 一整天沒跑——通常是 D 與 W 都被限定但語意搞錯。
- 把已有 cron 換到另一時區部署時比對觸發時刻。
操作步驟
- 在“Cron 表達式”中輸入五段表達式,例如 */15 9-17 * * 1-5。
- 選擇時區(會影響觸發時刻)。
- 選擇要顯示的下 N 次執行時間,最多 20 次。
輸入 / 輸出說明
- 輸入
- 標準 5 段 Cron;不支援 L / W / # / 星期名稱。
- 輸出
- 所選時區下未來 N 次觸發時間的當地時間、ISO 8601、Unix 時間戳。
- 限制
- 搜尋視窗固定 8 年;超過會提示「未來 8 年內無匹配」。
注意事項
D(日)與 W(週)都被限定時採 Vixie cron 語意:OR(任一命中即觸發)。與 Quartz 相反,容易踩雷。
常見問題
- 「* * * * *」是每分鐘嗎?
- 是。全部通配符,每分鐘觸發一次。
- `0 0 1 * MON` 這種語法支援嗎?
- 不支援。本工具只接受數字(0-6 或 1-7;7 等價 0)。
- DST 切換那小時如何處理?
- 使用服務器的時區數據庫和日期運算。夏令時邊界可能因調度器及版本而異,本工具不保證模擬所有系統的漏跑或補跑策略,部署前應在目標調度器核對。
- 為甚麼 0 9 1 * 1 不只是每月一日且為週一?
- 標準 Cron 在“日”和“周”同時受限制時使用或關係,因此每月一日和每個週一都會匹配。需要且關係時應在任務代碼里增加條件。
- 點擊計算後任務會真的運行嗎?
- 不會。本頁只解析表達式並列出未來匹配時間,不連接你的服務器,也不會添加 crontab。實際運行需要在目標系統配置任務。
相關工具