Cron 表达式生成器
0-59
0-23
1-31
1-12
0-7(0,7=周日)
Cron 语法简洁但容易出错:0 */6 * * * 表示每六小时运行一次,而 */6 0 * * * 只会在午夜后的第一个小时内触发 10 次。该生成器支持以可视化方式选择计划(如每 15 分钟、工作日上午 9 点、每月 1 日),并输出精确的表达式,以及用通俗语言解释其含义的说明。
如何构建 cron 表达式
-
1
选择预设或直接输入字段
每分钟、每小时、每天午夜、每周日以及每月 1 日都只需点击一次即可完成。其他情况,请直接在五个字段中输入数值。
-
2
完善时间表
可指定具体的分钟、小时、月份中的天数、月份以及星期中的日期。支持范围(9–17)、列表(1,15)和步长(*/6)。
-
3
查看表达式
生成器始终输出标准的 5 字段 cron 格式,并附有对计划的通俗易懂说明。
-
4
核对方言
不同方言规则不同(Quartz、AWS EventBridge、Kubernetes)。请确认表达式与你的调度器所期望的格式一致。
五个字段
* * * * *
│ │ │ │ │
│ │ │ │ └── 星期 (0-6,星期日=0,或 SUN-SAT)
│ │ │ └───── 月份 (1-12,或 JAN-DEC)
│ │ └──────── 日期 (1-31)
│ └─────────── 小时 (0-23)
└────────────── 分钟 (0-59)
每个字段均支持以下取值:
- 具体数字:
5 - 列表:
1,15,30 - 范围:
9-17 - 步长:
*/10(每 10 一次)或0-30/5(从 0 到 30 每 5 一次) - 通配符:
*(所有取值)
常用表达式
| 计划 | Cron 表达式 |
|---|---|
| 每分钟 | * * * * * |
| 每 15 分钟 | */15 * * * * |
| 每小时整点 | 0 * * * * |
| 每 6 小时 | 0 */6 * * * |
| 每天凌晨 2 点 30 分 | 30 2 * * * |
| 每个工作日上午 9 点 | 0 9 * * 1-5 |
| 每周一上午 8 点 | 0 8 * * 1 |
| 每月 1 日凌晨 3 点 | 0 3 1 * * |
| 工作日 9 点至 17 点每 15 分钟 | */15 9-17 * * 1-5 |
| 每月 1 日和 15 日中午 | 0 12 1,15 * * |
| 每周日午夜 | 0 0 * * 0 |
日期与星期同时指定时的陷阱
在标准 cron 中,如果同时指定了日期和星期(都不是*),则只要其中任意一个匹配,任务就会运行(是 OR,而非 AND)。0 0 1 * MON会在每月 1 日以及每周一运行,而不仅仅在 1 日恰好是周一时运行。
Vixie cron 和大多数 Linux 发行版都遵循这条 OR 规则;Quartz(Java)等少数系统则采用 AND。如有疑问,请使用调度器中的试运行(dry run)或测试任务来验证表达式。
方言差异
- 标准Cron(Linux):包含5个字段,星期编号为0–6(周日对应0或7)。
- Quartz(Spring、Java应用程序):需填写6–7个字段,其中第1字段为秒数,第2字段为可选年份;星期几范围为1–7(周日对应1)。
- AWS EventBridge 定时任务:包含 6 个字段,其中需包含年份;周日期与月日期必须互斥(二者之一必须为
?)。 - GitHub Actions:标准5个字段,最小间隔为5分钟,仅支持UTC时间。
- Kubernetes 定时任务:标准配置为 5 个字段,默认使用 UTC 时间格式。
务必确认您的调度程序所使用的方言。
时区
经典定时任务会在服务器的本地时区运行。这在夏令时切换期间会产生显著影响:凌晨2:30的任务在切换日可能会被执行两次或完全无法执行。现代调度工具(如systemd timers、Kubernetes、EventBridge)支持明确指定时区,除非有充分理由不使用UTC,否则应始终采用UTC时间。
常见问题
表示该字段每 5 个单位一次,从 0 开始。在“分钟”字段中,*/5会在第 0、5、10、15……55 分钟运行。它是0,5,10,15,20,25,30,35,40,45,50,55的简写形式。
Cron 无法表达不能整除 60 分钟或 24 小时的任意间隔。对于 90 分钟,请列出具体的运行时间:使用0 0,9 * * *并搭配额外的行,或改用支持任意间隔的调度工具(如 systemd 定时器、anacron)。
午夜。字段顺序是“分钟-小时”,因此0 0表示“第 0 小时的第 0 分钟”;中午则是0 12 * * *。
标准 cron 会跳过该任务,错过的运行不会重试。Anacron 会在下次开机时补跑错过的每日、每周或每月任务。Kubernetes CronJob 提供startingDeadlineSeconds和concurrencyPolicy,可显式处理错过的运行窗口。
相关工具
ASCII 表参考
完整 ASCII 表,覆盖 0 到 127;列出每个代码的十进制、十六进制、八进制、二进制值和 HTML 数字字符引用写法,包括 NUL、LF、DEL。
HTML 字符参考
可搜索的 HTML 实体列表,含命名代码与数值代码,并支持一键复制特殊字符和符号。
键盘快捷键参考
搜索 macOS、Windows 和 Linux 上 VS Code、Chrome 以及使用 GNU Readline 的 Bash 的文档默认快捷键。
电话号码验证器
根据各国号码规划检查结构,并显示地区、类型以及E.164、国际、国内和RFC 3966格式。
BBCode 转 HTML 转换器
将 BBCode(论坛标记)转换为干净的 HTML。支持格式标签、列表、引用、代码、图片和链接。
随机颜色生成器
生成 1 到 50 个随机 HEX 颜色,查看色块,复制代码,并用于 CSS、测试或配色探索。