我有一个这样的 cron 格式:
0 0 12 1/1 * ? *,
如何阅读它以及它的含义是什么。我能理解没有斜线的东西,但不能理解这个。
答案1
斜杠表示执行将发生的步长值(必须是相关元素的最大值可整除的值)。第一个值是范围,例如 0-30,第二个值是频率,例如 5。如果分钟列中的值为 0-30/5,则它将在 0 范围内每五分钟执行一次-30分钟。
问号意味着每当第一次执行时,它都会使用问号获取元素的相应值,并将当时的值放入其中。这意味着,假设您在星期一第一次通过 cron 开始执行,并且星期几的值为 ?,它会将其更改为星期一,因此它会永久在星期一运行。
值的快速总结:
0 - 第一列表示在 0 分钟 - 这是执行的分钟。
0 - 第二列表示在 0 小时 - 这是执行的时间。
12 - 这是该月的第 12 天 - 这是该月执行的日期。
1/1 - 这意味着它希望每月执行一次(右侧 1),并且范围锁定到第一个月(左侧 1)。如果我的理解是正确的,这和单独拥有1是一样的。
* - 这是一周中某一天的值 - 有星号意味着它将在一周中的每一天重复。
看起来它会在一年中第一个月的 12 日 00:00 运行,无论星期几。
我不确定为什么有七个值,因为据我所知,标准 cron 文件只有五到六个值(第六个是年份,如下面的文档所示 - 但不包含在标准/默认部署中克朗)。我还建议阅读文档,因为它是了解它们的结构的很好的参考材料: