cron 表达式
2023/5/13大约 4 分钟使用文档其它
⏰ cron 表达式
cron 表达式是 MediaSaber 系统中用于定义任务执行时间计划的重要工具。在系统中涉及设置时间周期的功能都采用 cron 表达式进行配置,如定时任务、数据同步计划等。
🎯 可视化生成工具
MediaSaber WEB端在录入 Cron 表达式的输入框右侧带有 Cron 快速生成工具。这是一个可视化生成工具,可以快速生成常用表达式。即使不会编写 cron 表达式,也可以通过可视化工具轻松生成。

使用方法:
- 点击输入框右侧的时钟图标
- 在弹出的工具中选择需要的时间计划
- 系统会自动生成对应的 cron 表达式
🧪 表达式测试
如果您的表达式配置后任务没有正确执行,请先使用以下工具测试表达式:
将您的表达式复制粘贴到测试工具中,验证表达式的正确性。
📚 表达式格式说明
标准格式
MediaSaber 中的 cron 表达式是一个字符串,由 6 个字段组成,用空格分隔:
* * * * * * ——————表达式内容
秒 分 时 日 月 周 ——————表示的含义字段含义详解
| 字段 | 允许值 | 允许特殊字符 | 说明 |
|---|---|---|---|
| 秒 | 0-59 | * , - / | 一小时中的第几秒 |
| 分 | 0-59 | * , - / | 一小时中的第几分 |
| 时 | 0-23 | * , - / | 一天中的第几小时 |
| 日 | 1-31 | * , - / ? L W | 一月中的第几天 |
| 月 | 1-12 或 JAN-DEC | * , - / | 一年中的第几月 |
| 周 | 0-7 或 SUN-SAT | * , - / ? L # | 一周中的星期几 (0=7=SUN) |
特殊字符说明
| 字符 | 说明 | 示例 |
|---|---|---|
* | 匹配该字段的所有值 | * * * * * * 表示每秒执行 |
? | 仅在日和周字段中使用,表示不指定值 | 用于日和周字段互斥的情况 |
- | 指定值的范围 | 10-20 表示从10到20 |
, | 指定多个不连续的值 | 1,3,5 表示第1、3、5 |
/ | 指定值的起始和增加幅度 | 0/15 表示从0开始每15个单位 |
L | 最后 | 在日字段中表示本月最后一天 |
W | 工作日 | 靠近指定日期的最近工作日 |
# | 第几个星期几 | 6#3 表示每月第三个星期五 |
📋 常见示例
基础示例
* * * * * * 每秒执行一次
0 * * * * * 每分钟执行一次
0 0 * * * * 每小时执行一次
0 0 0 * * * 每天凌晨执行一次
0 0 1 * * * 每天凌晨1点执行一次
0 0 1 1 * * 每月1日1点执行一次
0 0 1 1 1 * 每年1月1日凌晨1点执行一次高级示例
0 0 9-17 * * * 每天9点到17点每小时执行一次
0 0/30 9-17 * * * 每天9点到17点每30分钟执行一次
0 0 0 * * 1-5 工作日每天凌晨执行一次
0 0 0 1 * * 每月1日凌晨执行一次
0 0 0 1 1 * 每年1月1日凌晨执行一次
0 0 0 L * * 每月最后一天执行一次
0 0 0 LW * * 每月最后一个工作日执行一次
0 0 0 * * 5L 每月最后一个星期五执行一次
0 0 0 * * 6#3 每月第三个星期六执行一次⚠️ 注意事项
时间设置建议
- 避免高峰期:尽量避免在系统使用高峰期设置密集任务
- 错峰执行:将不同任务安排在不同时间执行,避免资源竞争
- 合理频率:根据实际需求设置执行频率,避免过于频繁
表达式编写要点
- 字段数量:确保表达式包含6个字段
- 数值范围:确保各字段的数值在允许范围内
- 特殊字符:正确使用特殊字符,特别是日和周字段的互斥关系
- 时区考虑:cron表达式基于系统时区执行
常见错误
- 字段数量错误:缺少或多余字段
- 数值越界:如分钟字段使用70
- 日和周同时指定:应在其中一个字段使用?字符
- 英文大小写:星期和月份应使用大写英文
通过正确使用 cron 表达式,您可以精确控制 MediaSaber 系统中各种定时任务的执行时间,实现自动化管理。

