CronJob
排程工作 (CronJob) 用來定期自動化許多工作,可以設定固定日期、時間 、重複間隔或指定間隔後執行一次不同的腳本、指令或是程式,減少每次都必須重複執行相同工作的麻煩。
DESCRIPTION
These are the tasks that run periodically by the operating system. Users can schedule commands the OS will run these commands automatically according to the given time. It is usually used for system admin jobs such as backups, logging, sending newsletters, subscription emails and more.
格式
CronJob 寫法必須符合 Cron 格式,這樣才能在正確的時間點執行任務。
說明
總共分成六個區塊: *(秒) *(分鐘) *(小時) *(天) *(月份) *(星期)
。
區塊說明 | 可設定值 |
---|---|
秒 | 0 秒到 59 秒 |
分鐘 | 0 分到 59 分 |
小時 | 0 時到 23 時 |
天 | 1 天到 31 天 |
月份 | 1 月到 12 月 (1月 到 12月,可用英文簡稱,例如:Jan、Feb...) |
星期 | 0 ~ 7 (0 和 7 都代表星期日,可用英文簡稱,例如:Mon) |
特殊符號
除了可以在時間區塊內放入數字代表確切的時間之外,也可以使用特殊符號來表示不同的執行時間。
特殊符號 | 代表意義 |
---|---|
* | 任意時間點 |
/n | 每隔 n 單位執行 |
, | 分隔不同時間點 |
- | 時間區間 |
範例
// 每秒都執行一次
cronTime: '* * * * * *'
// 每小時的 25 分時執行
cronTime: '0 25 * * * *'
// 每天上午 10:15 時觸發
cronTime: '0 15 10 * * *'
// 每 10 分鐘執行一次 (5, 15, 25 ...)
cronTime: '0 5/10 * * * *'
// 不限定是哪一天的 26 分、29 分、33 分執行
cronTime: '0 26,29,33 * * * *'
// 每隔 1 分鐘執行一次
cronTime: '0 */1 * * * *'
// 在每天下午 2:00 到 2:05 之間,每 1 分鐘觸發
cronTime: '0 0-5 14 * * *'
// 在每天的上午 9:00 到下午 17:00 之間,每半小時觸發
cronTime: '0 0/30 9-17 * * *'