简单理解crontab表达式

在日常工作中,我在使用定时任务的场景,一般使用Windows计划任务,或者hangfire这类的定时任务框架,因为hangfire已经实现了常用的cron表达式封装,所以一直也没去了解太多。

趁着最近有空,补习一下cron相关的知识。

认识cron表达式

cron表达式是一个字符串,用空格分隔,一般分成6或者7个字段,如:分 小时 日 月 周 年(可选), 在crontab中,没有秒这项

cron表达式的用法

cron 字段可以使用特殊符号来表达出不同的意思,比如 , - / * L W 等符号

  • * 表示所在项的每个点都触发,比如 *在第一位,说明每一分钟都要触发
  • ,表示选中的时间点,比如5,10 可以在5和10的时间点触发
  • -表示时间段,比如5-10 表示在5到10这个时间段,每一个点都触发
  • /表示除以这个数字为0,就可以触发,比如 */2表示 每触到除以2等于0的时候,都可以触发
  • L是单词last的缩写,表示最后一天,比如天的位上,用L,说明是最后一天
  • W表示工作日,是单词weekday的缩写,表示周一到周五

比如需要每小时第5分钟执行一次 ,可以写 5 * * * *

image

每五分钟执行一次 */5 * * * *

image

每 1小时触发一次 0 */1 * * *
image

每周一零点触发一次 0 0 * * 6

image

每个月1号零点触发一次 0 0 1 * *

image

每月最后一天触发 0 0 L * *

image

使用建议

一般来说,使用cron表达式的时候,最好找个工具验证一下。毕竟人不是机器,容易出错

推荐 tool.lu/crontab/

posted on   快乐海盗  阅读(2517)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示