cron条目的含义是“ * * / 1 * * *”?


14

不知何故,我发现很难理解*使用cron进行参数调整。

我希望每小时运行一次作业,并且使用以下设置:

* */1 * * *

但这似乎没有完成。有人可以解释一下上面的含义以及这项工作需要什么吗?


好的,我现在明白了:问题在于*标记,我放在分钟位置... * / 1和*放在小时位置可能意味着同一件事..
xyz 2012年

1
实际上,它似乎每分钟都会运行一次!如果它根本没有运行,那么您将遇到另一个问题。您发布的部分之后的字符串是什么?
dotancohen

Answers:


24
  • *意味着每个
  • */n意味着每n次。(因此,*/1意味着每1个。)

如果您希望每小时仅运行一次,则必须将第一项设置为其他值*,例如20 * * * *要在第20分钟每小时运行一次。

或者,如果您有权编写/etc/cron.hourly/(或系统上的任何内容),则可以在此处放置脚本。


1
我以为n是每n个。那么n和1 / n有什么区别?
xyz 2012年

7
n恰好在n处。像上面一样,20表示在20分钟1/n表示每1个n从1开始。但是实际上,它用作1-2/n,意思是每nth从1到2的间隔。(请注意,并非所有的cron实现都支持间隔。)
manatwork 2012年

5
+1即可将其放入/etc/cron.hourly任何现代计算机中。我们等待了几十年,这就是它的目的!
亚伦·马拉斯科

2

*/1是多余的,你应该使用*来代替。

* */1 * * *

不会每小时运行一次,而是每分钟运行一次!
要每小时(在1:00、2:00等)运行作业,请使用

0 * * * *  
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.