每 4 小时运行一次 cron 的正确语法是什么?

ero*_*ppa 69 cron

我有以下语法(我认为这是正确的?)但它每分钟运行一次命令!

* */4 * * * /cmd.sh
Run Code Online (Sandbox Code Playgroud)

Eva*_*son 77

编辑之前的原始帖子将配置显示为:

  • */4 * * * /cmd.sh

海报不熟悉 Markdown 并在第一列中放置了一个星号,使其看起来像一个项目符号。我编辑了他们的帖子以反映他们打算发布的内容:

* */4 * * * /cmd.sh
Run Code Online (Sandbox Code Playgroud)

在该配置中,发布者将获得他们观察到的行为:该作业将在可被 4 整除的小时内每分钟运行一次。

为了避免每分钟运行一次,第一列中需要一个数字,如下所示:

15 * * * * whatever...
Run Code Online (Sandbox Code Playgroud)

这将在每小时后的第 15 分钟运行。

将所有这些放在一起:要在可被 4 整除的小时内每小时运行一次,请使用以下语法:

15 */4 * * * whatever...
Run Code Online (Sandbox Code Playgroud)

  • 您一定误解了这个问题,该命令应该每四小时运行一次,而不是每小时四次。 (2认同)

phu*_*ion 71

0 0,4,8,12,16,20 * * * /cmd.sh
Run Code Online (Sandbox Code Playgroud)

这大概就是我要做的。这将每 4 小时运行一次作业,时间为 00:00、04:00、08:00、12:00、16:00、20:00。

这只是一种更冗长的 */4 编写方式,但它应该工作相同。


小智 29

执行 crontab -e 然后添加以下条目

0 */4 * * * path_to_the_script

这将每 4 小时编写一次脚本。


小智 9

问题是第一列中的 *

' * */2 * * * /path-to-script '

这转化为每小时每分钟运行一次,但仅每 2 小时运行一次