Crontab工具
站长工具
在线 Crontab 表达式解析与生成工具,支持表达式验证、自然语言解释、执行时间预测,内置 60+ 常用表达式和 16 个快捷预设,覆盖运维、监控、备份等场景
Cron 表达式
每隔 5 分钟 执行
分钟
*/5每隔5分分钟执行
000510152025303540455055
小时
*每小时
000102030405060708091011+12
日
*每日
123456789101112+19
月
*每月
1月2月3月4月5月6月7月8月9月10月11月12月
星期
*每星期
周日周一周二周三周四周五周六周日
接下来执行时间
10 次
1
2026-09-02 07:35 周三1 分钟后
2
2026-09-02 07:40 周三6 分钟后
3
2026-09-02 07:45 周三11 分钟后
4
2026-09-02 07:50 周三16 分钟后
5
2026-09-02 07:55 周三21 分钟后
6
2026-09-02 08:00 周三26 分钟后
7
2026-09-02 08:05 周三31 分钟后
8
2026-09-02 08:10 周三36 分钟后
9
2026-09-02 08:15 周三41 分钟后
10
2026-09-02 08:20 周三46 分钟后
快捷预设
全部高频中频每日工作日每周每月每季/每年
每分钟
高频监控* * * * *每2分钟
实时告警*/2 * * * *每5分钟
常规监控*/5 * * * *每10分钟
数据采集*/10 * * * *每15分钟
心跳检测*/15 * * * *每30分钟
状态同步*/30 * * * *每小时
整点执行0 * * * *每2小时
定期检查0 */2 * * *每3小时
轮询任务0 */3 * * *每4小时
健康检查0 */4 * * *每6小时
数据同步0 */6 * * *每12小时
日志归档0 */12 * * *每天午夜
日志轮转0 0 * * *凌晨1点
数据同步0 1 * * *凌晨2点
数据备份0 2 * * *凌晨3点
全量备份0 3 * * *早上6点
早起任务0 6 * * *早上8点
日报生成0 8 * * *早上9点
业务启动0 9 * * *中午12点
午间统计0 12 * * *傍晚6点
日终汇总0 18 * * *晚上10点
夜间清理0 22 * * *工作日早8点
晨会提醒0 8 * * 1-5工作日早9点
业务任务0 9 * * 1-5工作日每10分
办公监控*/10 * * * 1-5工作日晚6点
日终处理0 18 * * 1-5工作时间每小时
9-18点整点0 9-18 * * 1-5周日午夜
周数据清理0 0 * * 0周日凌晨3点
周全量备份0 3 * * 0周一早8点
周报任务0 8 * * 1周一早9点
周会提醒0 9 * * 1周五晚6点
周末准备0 18 * * 5周六凌晨2点
系统维护0 2 * * 6每月1号
月清理0 0 1 * *每月1号早8点
月报生成0 8 1 * *每月15号
月中任务0 0 15 * *每月28号
月末预清理0 0 28 * *每季度首日
季度结算0 0 1 1,4,7,10 *每季度早8点
季度报告0 8 1 1,4,7,10 *每半年
半年审计0 0 1 1,7 *元旦
年度任务0 0 1 1 *劳动节
节日提醒0 0 1 5 *国庆节
节日提醒0 0 1 10 *常用表达式参考
全部分钟级小时级每日定时每周/工作日每月/每年复合/高级
* * * * *每分钟执行*/2 * * * *每2分钟执行*/5 * * * *每5分钟执行*/10 * * * *每10分钟执行*/15 * * * *每15分钟执行*/20 * * * *每20分钟执行*/30 * * * *每30分钟执行0,30 * * * *每小时0分和30分(每半小时)0,15,30,45 * * * *每15分钟(0/15/30/45分)0 * * * *每小时整点执行0 */2 * * *每2小时执行0 */3 * * *每3小时执行0 */4 * * *每4小时执行(健康检查)0 */6 * * *每6小时执行0 */8 * * *每8小时执行(三班倒)0 */12 * * *每12小时执行30 * * * *每小时30分执行0 0 * * *每天午夜 00:00(日志轮转)0 1 * * *每天凌晨 1:000 2 * * *每天凌晨 2:00(数据备份)30 2 * * *每天凌晨 2:300 3 * * *每天凌晨 3:00(全量备份)0 6 * * *每天早上 6:000 8 * * *每天上午 8:00(日报)30 8 * * *每天上午 8:300 9 * * *每天上午 9:000 12 * * *每天中午 12:000 14 * * *每天下午 2:000 18 * * *每天下午 6:00(日终)0 22 * * *每天晚上 10:000 23 * * *每天晚上 11:000 0 * * 0每周日午夜0 3 * * 0每周日凌晨3点(周备份)0 8 * * 1每周一上午8点(周报)0 9 * * 1每周一上午9点(周会)0 18 * * 5每周五下午6点0 2 * * 6每周六凌晨2点(系统维护)0 9 * * 1-5工作日每天上午9点0 18 * * 1-5工作日每天下午6点30 8 * * 1-5工作日上午8:300 9-17 * * 1-5工作日9-17点每小时*/10 9-18 * * 1-5工作日9-18点每10分钟0 0 1 * *每月1号午夜(月清理)0 8 1 * *每月1号上午8点(月报)0 0 15 * *每月15号午夜0 0 28 * *每月28号午夜0 0 1 1 *每年元旦(年度任务)0 0 1 5 *每年劳动节0 0 1 10 *每年国庆节0 0 1 1,4,7,10 *每季度首日(季度结算)0 8 1 1,4,7,10 *每季度首日早8点0 0 1 1,7 *每半年(1月和7月)0 9,12,15,18 * * *每天 9/12/15/18 点0 8-18/2 * * *每天8-18点每2小时0 8-18/2 * * 1-5工作日8-18点每2小时0 9-18 * * *每天9-18点每小时0 0-6 * * *每天凌晨0-6点每小时0 8,10,12,14,16,18 * * 1-5工作日偶数整点0 0 1,15 * *每月1号和15号午夜0 0 1 1,4,7,10 *每季度首日午夜0 0 * * 1,3,5每周一/三/五午夜0 6,18 * * *每天早晚6点使用说明
字段格式
| 字段 | 取值范围 | 示例 | 说明 |
|---|---|---|---|
| 分钟 | 0-59 | */5 | 每5分钟 |
| 小时 | 0-23 | */2 | 每2小时 |
| 日期 | 1-31 | 1 | 每月1日 |
| 月份 | 1-12 | 1-6 | 1月到6月 |
| 星期 | 0-7 | 1-5 | 周一到周五 |
特殊字符
| 字符 | 说明 |
|---|---|
* | 通配符,匹配任意值(每个) |
, | 列表分隔符,指定多个值,如: 1,3,5 |
- | 范围分隔符,指定范围,如: 1-5 |
/ | 步长分隔符,指定间隔,如: */5 表示每5个单位 |
常见使用场景
| 场景 | 表达式 | 说明 |
|---|---|---|
| 系统监控 | */5 * * * * | 每5分钟检查系统状态 |
| 数据备份 | 0 2 * * * | 每天凌晨2点备份数据 |
| 日志轮转 | 0 0 * * * | 每天午夜轮转日志文件 |
| 周报生成 | 0 8 * * 1 | 每周一早8点生成周报 |
| 月度清理 | 0 0 1 * * | 每月1号清理临时数据 |
| 业务定时 | 0 9 * * 1-5 | 工作日早9点执行业务任务 |
| 健康检查 | 0 */4 * * * | 每4小时检查服务健康 |
| 季度结算 | 0 0 1 1,4,7,10 * | 每季度首日执行结算 |
常见问题
Cron 表达式有几个字段?
标准 Cron 表达式包含 5 个字段:分钟(0-59)、小时(0-23)、日期(1-31)、月份(1-12)、星期(0-7)。某些系统支持第 6 个字段(秒)或第 7 个字段(年份),本工具使用标准 5 字段格式。
星期字段中 0 和 7 都表示周日?
是的,0 和 7 都表示周日,兼容不同系统约定。建议使用 0-6 表示周日到周六。
日期和星期字段是什么关系?
日期和星期字段是"或"的关系。如果两个字段都不是 *,则只要其中一个匹配就会执行。例如 0 0 15 * 5 会在每月15号或每个周五执行。
*/5 和 0,5,10... 有什么区别?
*/5 表示从起始值开始每隔 5 个单位,即 0,5,10,15...55。效果与显式列出相同,但写法更简洁,推荐使用。
如何表示"每月的最后一天"?
标准 Cron 不支持 L(Last)语法。变通方法是每月 28-31 号都执行,在脚本中判断次日是否为 1 号。某些系统(如 Quartz)支持 L 扩展。
Spring @Scheduled 如何使用?
Spring 的 @Scheduled 支持 6 字段 Cron(含秒),格式为:秒 分 时 日 月 周。例如 @Scheduled(cron = "0 0 2 * * ?") 表示每天凌晨 2 点。注意 Spring 使用 ? 表示不指定日/周。
Linux Crontab 如何添加定时任务?
使用 crontab -e 编辑,每行一个表达式,格式:分 时 日 月 周 命令。例如 */5 * * * * /usr/bin/backup.sh 表示每 5 分钟执行备份脚本。