侧边栏壁纸
博主头像
liuyiwuqing博主等级

心在哪里收获就在哪里

  • 累计撰写 22 篇文章
  • 累计创建 24 个标签
  • 累计收到 24 条评论

目 录CONTENT

文章目录

Cron 表达式

liuyiwuqing
2024-03-05 / 0 评论 / 0 点赞 / 329 阅读 / 1,074 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2024-03-31,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
广告 广告

简介

Cron 表达式是一种用于指定定时任务执行时间的格式化字符串。在软件开发和系统管理中,经常需要执行周期性任务,例如备份数据库、定时清理日志文件等。Cron 表达式就是为了满足这种需求而设计的。本教程将介绍 Cron 表达式的基本语法和常见用法。

Cron 表达式的基本结构

Cron 表达式由 6 个字段组成,每个字段代表一段时间。这些字段从左到右依次表示:

  1. 秒(Second):0 到 59
  2. 分钟(Minute):0 到 59
  3. 小时(Hour):0 到 23
  4. 日期(Day of month):1 到 31
  5. 月份(Month):1 到 12 或者 JAN 到 DEC
  6. 星期(Day of week):0 到 6 或者 SUN 到 SAT(0 和 7 都代表星期天)

每个字段可以是一个值、一个范围、一个列表或者一个通配符。

基本语法

一个完整的 Cron 表达式包含 6 个字段,通过空格分隔。例如:

* * * * * *

这个表达式代表每秒钟都执行任务。下面是一些常见的例子:

0 0 * * * *:每天的午夜(00:00:00)执行任务
0 0 6 * * *:每天的早上 6 点执行任务
0 0 12 * * MON-FRI:每周一至周五的中午 12 点执行任务
0 0 */2 * * *:每两个小时执行一次任务
0 30 9 * * MON-FRI:每周一至周五的早上 9 点 30 分执行任务
表达式 说明
0 0 2 * * ? 每天凌晨2点
*/5 * * * * ? 每隔5秒执行一次
0 */5 * * * ? 每隔5分执行一次
0 26,29,33 * * * ? 在26分、29分、33分执行一次
0 30 0 * * ? 每天半夜12点30分执行一次
0 15 10 ? * * 每天上午10:15执行一次
0 0 0/1 * * ? 每个整点执行一次
0 * 14 * * ? 每天14点到14:59分,每1分钟执行一次
0 0-5 14 * * ? 每天14点到14:05分,每1分钟执行一次
0 0/5 14 * * ? 每天14点到14:55分,每5分钟执行一次
0 0/5 14,18 * * ? 每天14点到14:55分,和18点到18点55分,每5分钟执行一次
0 0 18,22 * * ? 每天18点、22点执行一次
0 0 7-23 * * ? 每天7点到23点,每整点执行一次
0 0 10,14,16 * * ? 每天上午10点,下午2点,4点
0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时
0 0 12 ? * WED 表示每个星期三中午12点
0 15 10 * * ? 2024 2024年的每天上午10:15触发
0 15 10 15 * ? 每月15日上午10:15触发
0 15 10 ? * MON-FRI 周一至周五的上午10:15触发
0 15 10 L * ? 每月最后一日的上午10:15触发

特殊字符

除了数字和通配符之外,Cron 表达式还支持一些特殊字符:

  • *(星号):代表所有可能的值。例如,* 在分钟字段表示每分钟都执行任务。
  • /(斜线):用于指定增量值。例如,*/10 在分钟字段表示每隔 10 分钟执行一次任务。
  • ,(逗号):用于指定多个值。例如,1,15,30 在分钟字段表示在 1 分、15 分和 30 分时执行任务。
  • -(连字符):用于指定范围。例如,1-5 在分钟字段表示从第 1 分钟到第 5 分钟执行任务。
  • ?(问号):在日期字段或者星期字段中,代表不指定具体值。例如,* * ? * * 在日期字段中表示每天都执行任务,星期字段无所谓。

总结

Cron 表达式是一种强大的定时任务调度工具,通过简单的语法就能实现复杂的调度逻辑。掌握了 Cron 表达式的基本语法和特殊字符,你就可以轻松地安排各种定时任务,提高系统的自动化程度,减轻人工操作的负担。

0
广告 广告

评论区