Crontab格式 - 每15分钟一次

Sha*_*lor 27 unix crontab

我试图让每15分钟运行一个简单的crontab作业,并且无法确定如何格式化时序.

我一直在说的是以下内容:

15 * * * * ------------------------
Run Code Online (Sandbox Code Playgroud)

我很确定这只是运行每小时的前15分钟.

我认为crontab允许用户指定运行的确切时间,即:

0, 15,30,45 * * * * -------------------------
Run Code Online (Sandbox Code Playgroud)

但是如果我想从开始它的那一刻开始每15分钟运行一次crontab,(可能不一定是可以被15整除的值),我将如何进行格式化/那是可能的?

Kei*_*son 42

Crontab不记得你"开始"的时间(大概是你执行crontab -ecrontab filename命令的时间).

如果要从任意时间开始每15分钟运行一次该作业,则必须指定该时间.这个:

7-59/15 * * * * command
Run Code Online (Sandbox Code Playgroud)

将在每小时后的7,22,37和52分钟运行.假设你正在运行Vixie cron,这是最常见的实现.为了更好的可移植性,您可以使用:

7,22,37,52 * * * * command
Run Code Online (Sandbox Code Playgroud)

请记住,前5个字段中的任何一个都不能有空格; 0, 15,30,45,就像你在你的问题中所做的那样,是无效的.


ear*_*l3s 34

你可以像这样格式化crontab,让它每15分钟运行一次.

*/15 * * * * [path/to/script]

  • 最常见的`crontab`实现确实支持该语法.如果您需要最大的可移植性,请将"*/15"更改为"0,15,30,45". (11认同)