切换工具

Cron 表达式

解析 Cron 语义 + 预览未来 N 次执行时间,支持 5 / 6 段语法。

常用:
可视化构造
字段含义
分钟
0 — 0
小时
9 — 9
* — 每日
* — 每月
星期
1-5 — 1 到 5

第 0 分,9 点,周一-周五

未来执行时间
  1. 2026-09-09 09:00
  2. 2026-09-10 09:00
  3. 2026-09-11 09:00
  4. 2026-09-14 09:00
  5. 2026-09-15 09:00
  6. 2026-09-16 09:00
  7. 2026-09-17 09:00
  8. 2026-09-18 09:00
  9. 2026-09-21 09:00
  10. 2026-09-22 09:00

使用说明

用途

Cron 表达式在线生成、校验、可视化工具,支持 Linux crontab(5 字段)、Quartz / Spring(6-7 字段)两种格式,可视化拖拽配置分钟 / 小时 / 日期 / 月份 / 星期,自动生成对应 cron 字符串。反向粘贴 cron 表达式自动解析为人类可读描述(如 "每天上午 9 点执行")。同时显示未来 10 次执行时间,便于核对调度逻辑。常用于 Linux crontab、Spring @Scheduled、Quartz 定时任务、Kubernetes CronJob、GitHub Actions 等场景。所有计算在浏览器本地完成。

操作步骤

  1. 选格式:crontab(5 字段,最常用)/ Quartz(6 字段含秒)/ Spring 6 字段
  2. 可视化配置:拖拽选具体分钟 / 小时 / 日期 / 月 / 星期
  3. 工具实时生成对应 cron 表达式
  4. 反向:粘贴现有 cron 表达式,工具解析为可读描述
  5. 未来执行时间预览:列出未来 5 / 10 / 30 次执行时间
  6. 常用模板一键插入:每分钟 / 每小时 / 每天凌晨 / 每周一 / 每月 1 号
  7. 复杂表达式(步长 / 范围 / 列表)支持: */5 1-5 1,3,5
  8. 不同时区下执行时间预览

常见问题

crontab 5 字段和 Quartz 6 字段有什么区别?
**crontab(Linux)5 字段**: 分 时 日 月 星期。**Quartz(Java)6-7 字段**: 秒 分 时 日 月 星期 [年]。Quartz 多了"秒"字段(最短粒度 1 秒)和可选"年"字段。**Spring @Scheduled** 也用 6 字段。**注意**:Quartz 的"日"和"星期"不能同时具体指定(其中一个必须是 ? 或 *),否则报错。
*/5 * * * * 是每 5 分钟吗?
是。`*/5` = 步长 5,从 0 开始:0, 5, 10, ..., 55。**完整语法**:分 时 日 月 星期 = 每 5 分钟(一天 288 次)。**注意**:`*/5` 实际是从 0 起的,不是"任意起点每隔 5 分钟"。如果想从 03 开始每 5 分钟(3, 8, 13...),写 `3-59/5`。
Spring @Scheduled 的 cron 怎么写?
Spring 用 6 字段(秒 分 时 日 月 星期)。**每分钟**: `0 * * * * *`(秒 = 0,分用 *)。**每小时整点**: `0 0 * * * *`。**每天上午 9 点**: `0 0 9 * * *`。**注意星期**: Spring 用 0-7 表示星期天到星期六(0 和 7 都是周日),周一是 1。本工具的"Spring 模式"按此规则生成。
为什么我的 Kubernetes CronJob 没按时执行?
常见原因: 1) **时区**: K8s CronJob 默认 UTC,写 0 9 * * * 是 UTC 9 点(北京 17 点)。从 K8s 1.27 起支持 spec.timeZone 字段指定。2) **失效时间窗口**: K8s CronJob 错过 starting_deadline_seconds 后跳过执行。3) **并发策略**: concurrencyPolicy=Forbid 时上次任务未结束就跳过。4) **Pod 调度**: 节点资源不足导致 Pod 不能启动。
Linux crontab 怎么测试不等到时间?
**直接执行命令**: 把 cron 行后面的命令复制到终端跑一遍,确认能成功(很多 cron 失败是因为环境变量不同 / 路径不对)。**修改时间**: 改 crontab 时间到几分钟后等待。**用本工具的"未来执行时间"功能**: 不用手动算,直接看下次什么时候。

应用场景

  • Linux crontab 系统任务:备份脚本 / 日志清理 / 监控告警
  • Spring @Scheduled:业务定时任务(订单超时检查 / 报表生成)
  • Quartz 调度:复杂业务调度(变频任务 / 时区相关)
  • Kubernetes CronJob:容器化定时任务(数据同步 / 健康检查)
  • GitHub Actions schedule:定时构建 / 文档发布

适用场景

Linux crontab、Spring Scheduled、Quartz、K8s CronJob、GitHub Actions schedule。后端、运维、DevOps、SRE 常用。多格式支持、可视化生成、未来执行预览、跨时区显示是关键差异点。