1

有没有区别

*/5 * * * * <COMMAND>

0/5 * * * * <COMMAND>

?

4

1 回答 1

3

这是不一样的。

  • 第一个将从任何时刻开始每 5 分钟执行一次,而
  • 第二个将在 0、5、10、... 55 分钟执行。

仅当第一次在 5k 分钟第一次执行时,它们才会具有相同的行为。


每5分钟可以这样写:

0,5,10,15,20,25,30,35,40,45,50,55 * * * * <COMMAND>

这个

0/5 * * * * <COMMAND>

或者

*/5 * * * * <COMMAND>

无论如何,最后一个将在分钟更改的任何时候开始,然后与下一次执行保持 5 分钟的距离。


*字符意味着每个。如果是单独的,则表示每分钟每小时等。

/字符可用于指定值的增量。如果我们指出X/Y它意味着每 Y 分钟从 X 分钟开始

  • 0/15=每小时的第 15 分钟,从零分钟开始=0,15,30,45
  • 3/20=每小时的第 20 分钟,从第三分钟开始=3,23,43
  • /40=每小时每 40 分钟=40
  • 3/40=每小时的第 40 分钟,从第三分钟开始=43

回到您的问题,使用这两个运算符会得到以下结果:

*/5= 每 5 分钟一次,随时开始。这样,它会在每分钟更改时启动,并在 5 分钟、10 分钟等后重复。

0/5= 从第 0 分钟开始每 5 分钟一次。它将在内部被认为是:0、5、10、15、20、25、30、35、40、45、50、55,因为这些是符合条件的分钟+5从第 0 分钟开始的分钟


一些参考资料:

于 2013-03-15T20:10:45.987 回答