💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。

- 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
- 导航
- 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
- 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
- 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
- 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
- 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂
非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨
博客目录
- 1.什么是 cron?
- 2.cron 格式?
- 3.域标识
- 4.特殊字符
- 5.注意事项
- 1.每分钟
- 2.指定小时
- 3.日期小时
- 4.月最后一天小时
- 5.周六凌晨 3 点
- 6.指定分钟
- 7.例子汇总
- 1.秒
- 2.分
- 3.时
- 4.天(月)
- 5.月
- 6.天(周)
- 7.年
一.基本介绍
1.什么是 cron?
Cron(又称为 cron 表达式或 cron job)是一种在 Unix 和类 Unix 操作系统中用于定期执行任务的时间表达式。Cron 表达式定义了任务应该在何时执行,通常用于自动化系统维护、数据备份、日志轮转等周期性任务。
Cron 表达式的灵活性使得它成为任务调度和自动化的强大工具,广泛应用于服务器管理、系统维护以及应用程序的定时任务等场景。在不同的操作系统和编程环境中,cron 的具体实现方式可能会有所不同。
2.cron 格式?
Cron 表达式的格式通常为:
通常定义 “年” 的部分可以省略,实际常用的由 前六部分组成
其中,星期既可以使用数字(0 表示星期天,1 表示星期一,以此类推),也可以使用缩写的英文单词(如 SUN、MON 等)。
3.域标识
java基础入门系列
/div>
/h4>
p>此外,还可以使用特殊字符来表示一些特殊的情况,例如:
/p>
ul>
这里指的是在两个以上的时间点中都执行,如果我们在 “分” 这个域中定义为 ,则表示分别在第 8 分,第 12 分 第 35 分执行该定时任务。 这个比较好理解就是指定在某个域的连续范围,如果我们在 “时” 这个域中定义 ,则表示在 1 到 6 点之间每小时都触发一次,用 表示 表示所有值,可解读为 “每”。 如果在“日”这个域中设置 ,表示每一天都会触发。 表示不指定值。使用的场景为不需要关心当前设置这个字段的值。例如:要在每月的 8 号触发一个操作,但不关心是周几,我们可以这么设置 在某个域上周期性触发,该符号将其所在域中的表达式分为两个部分,其中第一部分是起始值,除了秒以外都会降低一个单位,比如 在 “秒” 上定义 表示从 第 5 秒开始 每 10 秒执行一次,而在 “分” 上则表示从 第 5 秒开始 每 10 分钟执行一次。 表示英文中的LAST 的意思,只能在 “日”和“周”中使用。在“日”中设置,表示当月的最后一天(依据当前月份,如果是二月还会依据是否是润年), 在“周”上表示周六,相当于”7”或”SAT”。如果在”L”前加上数字,则表示该数据的最后一个。例如在“周”上设置”7L”这样的格式,则表示“本月最后一个周六” 表示离指定日期的最近那个工作日(周一至周五)触发,只能在 “日” 中使用且只能用在具体的数字之后。若在“日”上置”15W”,表示离每月 15 号最近的那个工作日触发。假如 15 号正好是周六,则找最近的周五(14 号)触发, 如果 15 号是周未,则找最近的下周一(16 号)触发.如果 15 号正好在工作日(周一至周五),则就在该天触发。如果是 “1W” 就只能往本月的下一个最近的工作日推不能跨月往上一个月推。 表示每月的第几个周几,只能作用于 “周” 上。例如 ”2#3” 表示在每月的第三个周二。 /ul>
/h4>
ul>
一般是有 6 个位置,分别表示 分 秒 时 天 (月) 月 天 (周) 第 7 个位置是年,一般省略 6 个位置中的 天 (月) 表示一个月中的第几天,即是几月几号中的几号;天 (周) 表示一周中的第几天,周日为第一天,周六为第七天 天 (月) 和天 (周)不能同时指定,其中必定有一个是 ? ? 只能用在 天 (月) 和天 (周) 2-10:符号 - 表示范围区间 2/10:符号 / 表示频率,从 2 开始,每隔 10,即 2,12,22… 类推 2,10:符号 , 表示和,表示 2 和 10 L:last 的缩写,表示最后,只能用在天 (月) 和天 (周),一般和数字搭配使用,如 L 在天 (月) 中表示一个月中的最后一天,L-1 则表示每个月的倒数第二天;3L 在天 (周) 中则表示最后一个星期二 /ul>
/h3>
/h4>
div>
/div>
/h4>
div>
/div>
/h4>
div>
/div>
/h4>
div>
/div>
/h4>
div>
/div>
/h4>
div>
/div>
/h4>
ul>
每隔 5 分钟执行一次(从 0 分开始) /ul>
div>
/div>
ul>
从 0 时开始,每小时执行一次 /ul>
div>
/div>
ul>
每天的 7 点 30 分 /ul>
div>
/div>
ul>
工作日的早上 6 点 30 分(即是周一到周五,每天早上的 6 点 30 分) /ul>
div>
/div>
ul>
每个月的最后一天早上的 10 点整 /ul>
div>
/div>
ul>
每个月的最后一个工作日的晚上 6 点 30 分(18:30) /ul>
div>
/div>
ul>
朝九晚五,每小时 /ul>
div>
/div>
ul>
2020 年的 8 月份每个星期六和星期日早上 10 点 28 分 28 秒 /ul>
div>
/div>
ul>
每个月的倒数第二天的早上 8 点整 /ul>
div>
/div>
ul>
L 表示最后一天(倒数第一天),L-1 则表示倒数第二天,以此类推 /ul>
/h3>
/h4>
p>
/p>
ul>
26:表示第 26 秒 5,16,27:表示第 5 秒、第 16 秒和第 27 秒 1-5:表示从 1 秒到 5 秒,就是 1 2 3 4 5 秒 *:表示每一秒 2/15:表示从第 2 秒开始,每隔 15 秒,就是 2 17 32 47 秒 /ul>
/h4>
p>
/p>
p>根据上述的秒,同理可得
/p>
ul>
26:表示第 26 分钟 5,16,27:表示第 5 分钟、第 16 分钟和第 27 分钟 1-5:表示从 1 秒到 5 分,就是第 1 2 3 4 5 分钟 *:表示每一分钟 2/15:表示从第 2 分钟开始,每隔 15 分钟,就是 2 17 32 47 分钟 /ul>
/h4>
p>
/p>
ul>
10:表示早上 10 点 22:表示晚上 10 点 2,8,18,23:表示凌晨 2 点,早上 8 点,傍晚 6 点和晚上 11 点 9-17:表示朝九晚五,就是 9 10 11 12 13 14 15 16 17 点 *:表示每小时 10/2:表示从早上 10 点开始,每隔 2 小时 /ul>
/h4>
p>
/p>
ul>
31:表示 31 号(注意有的月份是没有 31 号的) 5,10,15:表示 5 号、10 号和 15 号 8-17:表示 8 号到 17 号 *:表示所有可能的值(当指定为星号时,天(周)需指定为?) 5/9:表示从 5 号开始,每隔 9 天 ?:当天(周)指定任意值的时候,天(月)需要设置为? L:表示一个月中的最后一天 6L:表示倒数第 6 天 15W:W 指工作日,如果 15 号不是周六日,则表示 15 号当天;如果 15 号是周六,则表示 14 号;如果 15 号是周日,则表示 16 号;如果 31W 是周日,则 31W 表示 29 号(周五),不会跨月 LW:指最后一个工作日 15C:表示第 15 天(不是很明白这个,使用 15 和 15C 貌似效果相同?) /ul>
/h4>
p>
/p>
ul>
10:表示 10 月份 5,10,11:表示 5 月份、10 月份和 11 月份 4-8:表示 4 月份到 8 月份 *:表示所有可能的值 5/2:表示从 5 月份开始,每隔 2 个月,(就是 5 7 9 11 次年 5 次年 7 次年 9…) 1-12:也可以用 JAN-DEC 表示 /ul>
/h4>
p>
/p>
ul>
MON:表示周一 MON,TUE,FRI:表示周一,周二和周五 MON-FRI:表示从周一到周五 MON-WED,SAT:表示从周一到周三,和周六(就是周一、周二、周三和周六) mon,tue,wed,thu,fri,sat,sun:表示周一到周日(大小写均可,取星期英文前三个字母,注意星期四是 thu,而不是 thur) 7L:表示最后一个周六(效果等同于 SATL)(L 表示 last 最后的意思,7 表示周六,6 表示周五,类推,1 表示周日) 6C:表示周五以及之后包含周五的日期(感觉效果 FRI 一样,具体还没深究) 7#2:表示第二个周六(# 前面的数字表示星期,1 表示周日,2 表示周一,以此类推;# 后面的数字表示第几个) /ul>
/h4>
p>
/p>
ul>
2050:表示 2050 年 2020,2030,2040:表示 2020 年、2030 年和 2040 年 2020-2030:表示 2020 年到 2030 年 *:表示所有可能的值 2020/10:表示从 2020 年开始,每隔 10 年,(就是 2020,2030,2040…) /ul>
blockquote style="margin-top: 5px; margin-bottom: 5px; padding-left: 1em; margin-left: 0px; border-left: 3px solid rgb(238, 238, 238); opacity: 0.6;">
💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

/blockquote>
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/18545.html
相关文章:
java基础类型均可以2024-11-16 11:02:00
java基础 输出水仙花数2024-11-16 11:02:00
java基础看狂神还是尚硅谷2024-11-16 11:02:00
java基础案例类型2024-11-16 11:02:00
java基础镜像2024-11-16 11:02:00
java医疗基础知识2024-11-16 11:02:00
好的java基础数据2024-11-16 11:02:00
大理java编程基础学习班2024-11-16 11:02:00
java基础多选题2024-11-16 11:02:00
黑马程序员java基础笔记2024-11-16 11:02:00