Cron 表达式解析器
将 Cron 表达式转换为可读的定时计划,并预览下次执行时间。所有处理在浏览器中完成。
常用预设
字段说明
| 分钟 | 小时 | 日期 | 月份 | 星期 |
|---|---|---|---|---|
| 0-59 | 0-23 | 1-31 | 1-12 | 0-6 |
| 示例: */5 * * * * = 每分钟 */5 | ||||
| # | 距今 |
|---|
无法计算下次执行时间
无效的Cron表达式
如何使用 Cron 解析器
输入表达式
在输入框中输入 Cron 表达式,例如 0 9 * * 1-5 表示工作日每天上午 9 点。
查看描述
工具将表达式转换为自然语言描述。
预览时间
查看接下来的执行时间,确认计划正确。
什么是Cron?
Cron是类Unix操作系统中的基于时间的任务调度器。用户使用Cron表达式配置计划任务——由空格分隔的五个字段组成的字符串,共同定义调度计划。
特殊语法
标准Cron表达式有5个字段:
分钟 (0-59)
小时 (0-23)
日期 (1-31)
月份 (1-12)
星期 (0-6, 0=周日)
特殊字符
常见问题
支持标准的 5 字段格式(分 时 日 月 周)和 6-7 字段的扩展格式。
默认显示接下来的 5 次执行时间。
支持常见的非标准宏,如 @yearly、@monthly、@weekly、@daily、@hourly 等。
经典的 Vixie cron 格式包含五个字段:分钟(0-59)、小时(0-23)、日(1-31)、月份(1-12 或名称)以及星期(0-7,其中 0 和 7 都表示周日)。部分调度器(如 Quartz、Spring)会在最前面增加第六个秒字段。本解析器会根据字段数量自动判断你使用的是哪种布局。
* 表示所有取值;分钟字段中的 */5 表示每 5 分钟一次;1-5 是包含两端取值的范围(例如星期字段中的周一至周五);mon,wed,fri 则逐一列出单个取值。它们可以组合使用:0 9-17/2 * * * 表示每天在 9:00、11:00 等时间点运行,直到 17:00。
每天午夜是 0 0 * * *。每 6 小时一次是 0 */6 * * *——小时字段中的 */6 步进会在 00:00、06:00、12:00 和 18:00 触发。每周日凌晨 3 点是 0 3 * * 0。本解析器会计算下次运行时间,方便你在部署之前确认调度计划。
十有八九是时区不匹配:cron 依据服务器的本地时钟进行计算(部分实现支持在 crontab 中使用 CRON_TZ= 或 TZ= 行)。夏令时切换是第二大元凶——安排在春季时钟前跳时间间隙内的任务可能会被跳过,Vixie cron 文档对此有说明。Docker 容器默认使用 UTC,除非你设置了 TZ。
cron 是经典的 Unix 调度器:简单、以分钟为精度,没有内置的错失任务补偿机制。systemd 定时器增加了秒级精度、Persistent=true 恢复机制(可补跑设备关机期间错过的任务)以及 journald 日志。Windows 任务计划程序提供图形界面、事件触发器以及错过后尽快补跑的执行语义。Kubernetes CronJob 在云原生技术栈中扮演着同样的角色。
权威参考资料
本工具所依据的一手资料 - 官方标准与规范,而非二手摘要。