0 * * * * ?
点击表达式可复制到剪贴板
秒 (0-59)
分 (0-59)
时 (0-23)
日 (1-31)
月 (1-12)
周 (0-6)
未来执行时间预览
正在计算...

常用表达式

每分钟

0 * * * * ?

每分钟的第0秒执行

每小时

0 0 * * * ?

每小时的第0分执行

每天零点

0 0 0 * * ?

每天凌晨0点执行

每天中午

0 0 12 * * ?

每天12:00:00执行

每周一零点

0 0 0 ? * MON

每周一凌晨0点执行

每月1号零点

0 0 0 1 * ?

每月1日凌晨0点执行

每年1月1日

0 0 0 1 1 ?

每年元旦凌晨0点执行

每5秒

0/5 * * * * ?

每5秒执行一次

每5分钟

0 0/5 * * * ?

每5分钟执行一次

工作时间每小时

0 0 8-18 * * ?

8点到18点,每小时执行

工作日早9:30

0 30 9 ? * MON-FRI

周一至周五上午9:30执行

每月最后一天

0 0 0 L * ?

每月最后一天凌晨0点执行

Cron表达式语法说明

字段 允许值 允许特殊字符 说明
0-59 , - * / 0表示第0秒
0-59 , - * / 0表示第0分
0-23 , - * / 0表示零点
1-31 , - * ? / L W L表示最后一天,W表示最近工作日
1-12 或 JAN-DEC , - * / 可使用英文缩写
0-6 或 SUN-SAT , - * ? / L # 0=周日,L表示最后一个,#表示第几个

特殊字符说明:

* 匹配所有值    ? 不指定值(日/周互斥时使用)    - 范围(如 1-5

, 枚举多个值(如 1,3,5)   / 步长(如 0/5 表示从0开始每5个)

L 最后(日字段中表示月的最后一天,周字段中表示最后一个周X)

W 最近工作日(如 15W 表示离15号最近的工作日)   # 第几个(如 6#3 表示第3个周六)

常见问题

Cron表达式有哪些常见格式?
常见格式分为5字段(分 时 日 月 周)和6字段(秒 分 时 日 月 周)两种。本工具使用6字段格式(含秒),这是Spring/Quartz等Java框架的常用格式。Linux crontab使用5字段格式(不含秒)。
日字段和周字段可以同时指定吗?
不建议同时指定。在Quartz框架中,日和周两个字段互斥,当一个字段设为具体值时,另一个字段应设为 ?。例如每月1号执行写 0 0 0 1 * ?,每周一执行写 0 0 0 ? * MON
如何表示"每隔N分钟执行一次"?
使用步长语法 /。例如:0 0/5 * * * ? 表示每5分钟执行一次;0 0/10 * * * ? 表示每10分钟执行一次;0/30 * * * * ? 表示每30秒执行一次。
如何在特定时间范围内执行?
使用范围语法 -。例如 0 0 8-18 * * ? 表示每天8点到18点之间每小时执行;0 0 0 ? * MON-FRI 表示工作日(周一至周五)凌晨0点执行。