開發者
透過範例和常見模式學習 5 欄位 cron 語法,正確排程任何定期任務。
步驟指南
1
了解 5 個欄位
Cron 表達式由 5 個以空格分隔的欄位組成:分鐘(0–59)、小時(0–23)、日(1–31)、月(1–12)、星期(0–7,0 和 7 均表示週日)。範例:`30 9 * * 1` 表示「每週一上午 9:30」。
2
使用 * 表示「每個」
星號表示「每個有效值」。`* * * * *` 每分鐘執行一次。`0 * * * *` 每小時整點執行。`0 0 * * *` 每天午夜執行。
3
使用逗號列舉多個值
逗號可列舉特定值。`0 9 * * 1,3,5` 在週一、三、五 9:00 執行。`0 0 1,15 * *` 在每月 1 日和 15 日午夜執行。
4
使用斜線表示間隔
斜線定義步進間隔。`*/15 * * * *` 每 15 分鐘執行一次。`0 */6 * * *` 每 6 小時執行一次。`*/5 9-17 * * *` 在 9 AM 到 5 PM 之間每 5 分鐘執行。
5
使用連字號表示範圍
連字號指定範圍。`0 9-17 * * 1-5` 在工作日 9 AM 到 5 PM 每小時執行一次。可組合逗號和斜線實現複雜排程。
使用免費工具
Cron 產生器
常見問題
Q: 如何每 30 分鐘執行一次任務?
A: `*/30 * * * *` 或 `0,30 * * * *` 均可,兩種表達式都在每小時的整點和半點執行任務。
Q: Cron 使用哪個時區?
A: 傳統 cron 使用伺服器系統時區。雲端排程器(如 AWS EventBridge、GitHub Actions)通常預設使用 UTC。請務必檢查您所使用平台的時區設定。
Q: 日欄位和星期欄位有什麼區別?
A: 若兩個欄位均為非星號值,大多數 cron 實作在滿足任一條件時(邏輯 OR)執行任務。對不需要限制的欄位請使用 `*`。