可视化Cron表达式构建器,实时预览下次执行时间
💡 使用 *、范围(1-5)、列表(1,3,5)、步长(*/5)或组合。月份和星期也可用名称(JAN-DEC, SUN-SAT)。
Cron表达式工具是一种帮助开发者构建、解析和验证Cron定时任务表达式的在线助手。Cron是Unix/Linux系统中用于定时执行任务的经典机制,其表达式语法虽然功能强大,但六个字段的位置含义和特殊字符规则让许多开发者感到头疼。一个小小的语法错误就可能导致任务不执行或执行时间不符合预期。本工具提供可视化的Cron表达式编辑器,支持实时预览未来若干次执行时间,帮助开发者快速构建正确的定时规则。支持标准Linux Cron语法,也兼容Quartz、Spring等框架的扩展语法。
配置Linux crontab执行数据备份、日志清理、证书更新等定时维护任务,使用工具快速生成正确的表达式。
在Spring Boot、Node.js等框架中配置@Scheduled定时任务,确保Cron表达式语法正确且执行时间符合业务需求。
配置Jenkins、GitHub Actions等CI/CD工具的定时触发器,如每日构建、每周安全扫描等。
Cron表达式由5-6个空格分隔的字段组成,每个字段支持特殊字符:
// 标准Cron表达式格式(Linux)
// 分 时 日 月 周
// * * * * *
// 特殊字符含义
// * 任意值
// , 列举多个值 (1,3,5)
// - 范围 (1-5)
// / 步长 (*/5 表示每5个单位)
// 常用示例
// 0 2 * * * 每天凌晨2点
// */15 * * * * 每15分钟
// 0 9 * * 1-5 工作日上午9点
// 0 0 1 * * 每月1号零点
// 30 4 1,15 * * 每月1号和15号4:30
// Quartz扩展版增加"年"字段和"秒"字段(共7个)
A:在Cron中,*/5表示从最小值开始每5个单位触发一次。0/5表示从0开始每5个单位触发。对于分钟字段,两者效果相同(0,5,10,15...)。但在某些实现中,*/5更标准。
A:标准Cron中,如果日和周都不是*,则满足任一条件即触发(OR关系)。这常常让人困惑。建议同一时间只指定其中一个为具体值,另一个保持*。
A:使用0 */2 * * *,表示每两小时的第0分钟执行。执行时间为0:00, 2:00, 4:00...22:00。
A:Spring的@Scheduled默认使用6字段Cron(包含秒),格式为"秒 分 时 日 月 周",而Linux Cron是5字段(分 时 日 月 周)。注意不要混淆。
A:使用0 9 * * 1-5(标准Cron),表示周一到周五的9点执行。数字1-5代表周一到周五,0和7都代表周日。