杂记 › 技术笔记 › Crontab表达式看不懂?在线解析并预测下次执行时间

Crontab表达式看不懂?在线解析并预测下次执行时间

Crontab 是 Linux / Unix 下配置定时任务的表达式,用 5 个字段定义"什么时候执行",从左到右依次是分、时、日、月、周。例如 0 2 * * * 表示"每天凌晨 2:00"。U2工具箱 Crontab 解析工具能在线解释每个字段含义,并预测未来若干次执行时间,还内置常用模板。

一、五个字段分别是什么

字段取值范围含义
分钟0-59第几分钟
小时0-23第几小时(0=午夜)
日1-31每月几号
月1-12几月
周0-7星期几(0 和 7 都是周日)

特殊符号:* 任意值、, 列举(如 1,15)、- 范围(如 9-17)、/n 步长(如 */5 每 5 个单位)。

二、常见表达式速查

表达式含义
* * * * *每分钟
*/5 * * * *每 5 分钟
0 2 * * *每天 02:00
0 0 * * 1每周一 00:00
0 0 1 * *每月 1 号 00:00

三、三个容易踩的坑

  • "日"和"周"同时限定时是 OR 关系:0 0 1 * 1 表示"每月 1 号或每周一",而非"1 号且是周一"。
  • 时区:cron 按服务器时区执行,跨时区部署要确认,否则时间对不上。可用时间戳转换工具核对时间。
  • 命令里的 %:在 crontab 中 % 有特殊含义,需转义为 \%。

四、如何在线解析

  1. 打开 https://www.uutools.com/crontab-parse。
  2. 输入表达式,查看每个字段的中文解释。
  3. 查看预测的未来若干次执行时间,确认与预期一致。
  4. 不确定写法时,直接套用内置常用模板。

五、常见问题(FAQ)

Q1:Crontab 支持秒级吗?

标准 5 位 cron 不支持秒。部分环境(如 Quartz、某些框架)用 6/7 位含秒字段,需按其规范书写。

Q2:星期用 0 还是 7 表示周日?

两者都可以,0 和 7 都代表周日。

Q3:怎么确认表达式写对了?

用解析工具看它预测的下次执行时间,最直观。

小结:记住"分时日月周"的顺序,理解 * , - / 四个符号,再留意日周 OR、时区两个坑即可。写不确定时用Crontab 解析工具验证执行时间,避免定时任务"跑错点"。

📎 相关文章

两段文本到底哪里不一样?在线逐行对比高亮差异 2026-10-14 从一堆文本里挑出手机号、邮箱、身份证?批量提取神器 2026-10-14 下载的文件被篡改了吗?用MD5校验1分钟验明正身 2026-10-14 敏感信息脱敏工具使用指南:手机号、身份证、银行卡自动打码 2026-10-14 Base64编码转换工具使用指南:图片转Base64与Data URI内嵌实战 2026-10-14