速查表
下面是最常用的写法,点开对应说明可看细节,或直接到 Cron 表达式生成器 粘贴校验。
| 表达式 | 含义 |
|---|---|
* * * * * | 每分钟 |
*/5 * * * * | 每 5 分钟 |
0 * * * * | 每小时整点 |
0 */2 * * * | 每 2 小时 |
0 0 * * * | 每天凌晨 0 点 |
0 3 * * * | 每天凌晨 3 点 |
0 9 * * 1 | 每周一 9 点 |
0 0 1 * * | 每月 1 号 |
0 18 * * 1-5 | 工作日 18 点 |
30 2 * * 0 | 每周日凌晨 2:30 |
按分钟
每分钟执行: * * * * *
每 5 分钟执行: */5 * * * *(常用于健康检查)
每 30 分钟执行: */30 * * * *
在每小时的第 15 和 45 分钟: 15,45 * * * *
按小时
每小时整点执行: 0 * * * *
每 2 小时执行: 0 */2 * * *
每天 9 点到 18 点、每小时执行: 0 9-18 * * *(适合工作时间内轮询)
按天
每天凌晨 0 点: 0 0 * * *
每天凌晨 3 点(常用于备份): 0 3 * * *
每天中午 12 点半: 30 12 * * *
按周
每周一上午 9 点: 0 9 * * 1
每周日凌晨 2:30: 30 2 * * 0
工作日(周一至周五)18 点: 0 18 * * 1-5
每周末(周六、周日)10 点: 0 10 * * 6,0
按月
每月 1 号 0 点: 0 0 1 * *
每月最后一天要单独处理:标准 cron 不支持”最后一天”,常见做法是每天 0 点跑脚本、脚本里判断是否为月末。
组合场景
工作日、9-18 点、每 10 分钟: */10 9-18 * * 1-5
每季度第一天(1、4、7、10 月的 1 号)0 点: 0 0 1 1,4,7,10 *
用不确定的写法?先校验
把任意一条粘到 Cron 表达式生成器,即可看到中文解释与未来执行时间,避免”以为每天却成了每分钟”。不清楚字段含义先看 Cron 是什么,想系统学写法看 Cron 表达式怎么写。