[智能体-580]:Cron 一种定时任务时间调度语法,源自 Unix/Linux 系统的 cron 定时服务,用于精准定义任务触发时间规则,广泛应用于 Linux 定时脚本、Java Quartz 📅 2026/6/29 6:11:20 一、定义Cron 是一种定时任务时间调度语法源自 Unix/Linux 系统的 cron 定时服务用于精准定义任务触发时间规则广泛应用于 Linux 定时脚本、Java Quartz、Spring Scheduled、Docker、Airflow、XXL-Job 等各类定时调度框架。通过一串由空格分隔的数字 / 符号字符串描述秒、分、时、日、月、星期、年的执行周期无需编写复杂时间判断逻辑。二、两大主流标准格式1. Linux 原生 Cron5 位无秒、无年格式分 时 日 月 星期适用服务器 shell 定时任务、crontab 字段范围分钟0–59小时0–23日期1–31月份1–12星期0–60 周日6 周六2. Java/Quartz/Spring 标准6 位 / 7 位工业最常用16 位无年份Scheduled 默认秒 分 时 日 月 星期27 位带年份复杂调度秒 分 时 日 月 星期 年字段规则秒0–59分0–59时0–23日期1–31月份1–12 / JAN~DEC星期1–71 周日7 周六与日期互斥需用?占位年份可选2000–2099三、核心通配符通用表格符号作用*匹配该字段所有值?无指定仅用于「日 / 星期」二选一避免冲突/步长定义间隔执行-连续时间范围,多值枚举多个时间点L最后一天 / 最后一个星期W最近工作日#每月第 N 个星期四、核心特性高精度支持秒级、分钟级、日月周年多级周期调度表达能力强可组合范围、间隔、特殊日期月末、每月第 2 周三等跨平台通用几乎所有定时中间件、开发框架均兼容轻量化仅字符串配置无需额外时间配置文件互斥约束Quartz 规范中日期、星期不能同时赋具体值一个填数字另一个必须写?。五、适用场景后端定时任务数据同步、报表生成、缓存清理、日志归档服务器运维定时备份、巡检脚本、服务重启大数据调度定时拉取数据、定时计算任务业务系统定时推送消息、定时账单结算、定时过期清理。六、优缺点优点语法简洁一条表达式覆盖复杂周期无时区额外配置时默认服务器本地时间生态成熟在线校验工具多调试方便。缺点学习成本符号规则易混淆星期取值两套标准不支持「间隔时长偏移」如程序启动后每 10 分钟执行需用 fixedRate无法直接表达「每月最后一个工作日」等复杂组合不支持跨时区简易配置多时区场景需额外处理。七、补充区分Cron固定日历时间调度每天 8 点、每周一、每 5 分钟框架内置 fixedRate/fixedDelay固定间隔调度启动后每 5 分钟执行不受日历日期约束不属于 Cron 范畴。