每六个小时在Linux上运行一次cron作业


Answers:


323

您忘记了*,并且您有太多字段。这是你需要关心的时刻

0 */6 * * * /path/to/mycommand

这意味着从0开始的每六个小时,即在0、6、12和18小时,您可以将其写为

0 0,6,12,18 * * * /path/to/mycommand

感谢您的答复,这是每6小时开始什么时间?创建cron的时间?
甘道夫(Canda)StormCrow,2012年

谢谢,所以如果我想每6个小时从15:00开始运行它,那将是15 15,23,05,11 * * * /path/to/mycommand
甘道夫(Canda)StormCrow,2012年

5
是的,尽管第一个字段是分钟,您将其设置为15,所以这意味着15:15,23:15,05:15和11:15。(这可能不是每6个小时一转一次0 15,21,3,9 * * *),
2012年

6

您应该包括命令的路径,因为cron在广泛缩减的环境中运行。您不会在交互式Shell会话中拥有所有环境变量。

建议您指定脚本/二进制文件的绝对路径,或者在crontab本身中定义PATH。为了帮助调试任何问题,我还将重定向stdout / err到日志文件。


1
感谢您的答复,但是如果我在sh文件中声明环境变量,就像export variable=something仍然在同一脚本中使用它们一样?我在脚本中使用了很多日期命令
Gandalf StormCrow

@Gandalf-是的。您可以在脚本中定义所有env变量。这是一个好主意,因为这意味着您的脚本是独立的,并且与您可能要在cron中运行的其他内容隔离
Brian Agnew

5
0 */6 * * * command

这将是一天说6个小时的理想方式。

您的命令输入了六分钟!


2
@ArsenArsen我敢肯定,这是因为它并没有真正添加任何已有的答案(在此答案之前4年)。
阿迪尼亚




-2

尝试:

0 */6 * * * command

。* 不得不


1
这里的最后一行没有多大意义。您会考虑扩大规模吗?
Halfer

1
答案似乎不完整
Ajayramesh
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.