nicetool.dev logo

Cron 表达式解析器

标准 5 字段 cron 语法(分 时 日 月 周)。支持 @daily 等宏。

“每 15 分钟, 在 9-17 点, 在星期一-星期五”

*/15

分

0, 15, 30, 45

9-17

时

9-17

*

日

每

*

月

每

1-5

周

星期一-星期五

常用
接下来 10 次运行

    语法

    *
    任意值
    ,
    值列表
    -
    值范围
    /
    步长(例如 */15)

    ┌ 分
    │ ┌ 时
    │ │ ┌ 日
    │ │ │ ┌ 月
    │ │ │ │ ┌ 周
    * * * * *

    还支持:@yearly、@monthly、@weekly、@daily、@hourly。可使用 MON-FRI、JAN 等名称。

    什么是 cron 表达式?

    cron 表达式是由五个字段组成的字符串,用于为 crontab、Kubernetes CronJob、GitHub Actions 等任务调度器定义周期性计划。每个字段分别限制分钟、小时、日期、月份和星期。

    功能

    • • 用通俗语言解释任意 cron 调度
    • • 逐字段拆解并展开具体取值
    • • 以本地时区或 UTC 显示接下来 10 次运行时间
    • • 常用预设与清晰的错误提示

    离线可用

    解析与调度计算都在浏览器中完成。提示:当同时设置了日期和星期时,只要其中一个匹配 cron 就会运行。

    100% 本地处理。

    Cron 解析器使用方法

    1. 1

      输入包含五个字段的 cron 表达式:分钟、小时、日期、月份和星期。也支持 @daily、@hourly、@weekly 等宏。

    2. 2

      阅读自然语言描述,确认调度符合预期,例如"周一至周五的 09:00"。

    3. 3

      查看接下来的执行时间列表。时间按你的本地时区显示,可以准确知道任务何时触发。

    4. 4

      借助预设和语法表快速构建常见调度,然后把表达式复制到 crontab、Kubernetes CronJob、GitHub Actions 或你的调度器中。

    实际应用示例

    每晚备份

    0 2 * * * 每天 02:00 执行,是导出数据库的低峰时段。查看后续执行时间,确保不会与其他重型任务冲突。

    仅在工作时间

    */15 9-17 * * 1-5 在周一至周五 09:00 到 17:45 每 15 分钟执行一次,适合在办公时间轮询合作方 API。

    月度报表

    0 8 1 * * 在每月 1 日 08:00 执行,常用于发送账单或用量报告邮件。

    CI 定时任务

    GitHub Actions 的 schedule 触发器使用相同的五个字段,并且始终按 UTC 运行。把下次执行时间与北京时间(UTC+8)对比,避免出错。

    常见问题

    五个字段分别是什么?+

    依次为:分钟(0-59)、小时(0-23)、日期(1-31)、月份(1-12)和星期(0-6,0 表示周日)。星号表示"任意值"。

    */15 是什么意思?+

    这是步长:该字段每 15 个单位执行一次。分钟字段的 */15 会在第 0、15、30、45 分钟执行,10-50/20 则在第 10、30、50 分钟执行。

    为什么任务执行的天数比预期多?+

    当日期和星期都被限制时,标准 cron 只要其中一个匹配就会执行,而不是两者都匹配。0 0 1 * 1 会在每月 1 日和每个周一执行。

    cron 使用哪个时区?+

    传统 crontab 使用服务器时区,许多云调度器和 GitHub Actions 使用 UTC,Kubernetes 可以在 CronJob 中设置 timeZone。务必确认任务运行的环境。