Cron 表达式解析
Cron 表达式
常用:
表达式含义
解析失败
最近 10 次执行时间(本地时区)
字段说明(从左到右)
| 字段 | 取值范围 | 允许的特殊字符 |
|---|---|---|
| 秒(可选) | 0-59 | * , - / |
| 分钟 | 0-59 | * , - / |
| 小时 | 0-23 | * , - / |
| 日 | 1-31 | * , - / L |
| 月 | 1-12 或 JAN-DEC | * , - / |
| 星期 | 0-7 或 SUN-SAT(0 和 7 均为周日) | * , - / L |
5 位为标准 crontab 格式(分 时 日 月 周);6 位时第一位为秒。
特殊字符
* 匹配任意值,如分钟位的 * 表示每分钟 , 枚举多个值,如 1,15 表示 1 号和 15 号 - 范围,如 9-18 表示 9 点到 18 点 / 步长,如 */5 表示每 5 个单位执行一次 L 最后,日位的 L 表示当月最后一天 使用说明
Cron 表达式是 Linux crontab、Spring、Kubernetes CronJob 等定时任务系统通用的时间规则语法,由 5 个(分 时 日 月 周)或 6 个(含秒)空格分隔的字段组成。本工具将表达式实时翻译为中文描述,并计算最近 10 次执行时间,帮助快速验证定时任务配置是否符合预期。
输入或点击常用表达式即可解析,支持 * , - / L 等特殊字符。解析在本地浏览器完成,表达式不会上传服务器。
常见问题
5 位和 6 位 Cron 表达式有什么区别?
Linux crontab 使用 5 位(分 时 日 月 周),最小精度为分钟;Spring、Quartz 等 Java 框架使用 6 位,第一位是秒。本工具根据字段数量自动识别两种格式。
「日」和「星期」同时指定时如何生效?
在标准 cron 中两者是「或」的关系:任一匹配即执行。例如 0 0 13 * 5 表示每月 13 号和每周五都执行,而不是只在 13 号的周五执行,这是最常见的误解之一。
为什么执行时间和服务器实际执行的差了几小时?
本工具按浏览器本地时区计算,而 crontab 按服务器系统时区执行。如果服务器使用 UTC 而你在东八区,看到的时间会相差 8 小时,部署前请确认服务器时区设置。
如何表达「每隔 N 分钟」?
用步长语法 */N,如 */15 * * * * 表示每 15 分钟执行一次。注意 */N 是从 0 开始按固定刻度切分(0、15、30、45 分),而不是从任务启动时刻起算。