Answers:
最简单的方法是手动设置要在需要时运行的命令:
0,15,30,45 * * * * command0
1,16,31,46 * * * * command1
2,17,32,47 * * * * command2
...
14,29,44,59 * * * * command14
或者,您可以编写脚本来自动生成适当的crontab条目(避免输入错误)。
cron的某些版本(可能包括您使用的版本)接受扩展的语法:
0-59/15 * * * * command0
1-59/15 * * * * command1
1-59/15 * * * * command2
...
14-59/15 * * * * command14
Cron并不是真的擅长于您要做什么。您是否考虑过编写充当守护程序的脚本,该脚本基本上休眠15分钟,执行命令,然后循环执行?
sleep 300
在每次执行命令之间进行操作,则命令本身的执行将导致时间漂移。它可能每15:10而不是每15:00运行一次。而且,与不同crond
,如果后台进程终止或系统重新启动,它将不会自动重新启动。有一些方法可以“后台化”后台进程,但是随后您将大量重新实现crond
。
run-parts
大多数cron安装附带一个标准脚本,专门用于执行此操作。参见@AndrewSchulman的答案。
许多发行版都有/etc/cron.d/cronhourly,每个版本中的所有脚本都每小时运行一次。您甚至可以通过以序号开头的顺序来指定顺序,例如lik 01scriptA 02scriptB-它对您已经具有制造“ cronhourlybyfour”的cron知识应该是微不足道的,因为我们在Smoothwall的Linux发行版库上称它为:)
警告词:如前所述,它使用运行部件,运行部件不喜欢带有的脚本。在名称中,因此不要将其命名为“ deletehomefolders.sh”,而是将其命名为“ 01deletehomefolders”,并确保您以正确的#开头!您打算解释脚本的行。
run-parts
在Fedora / Red Hat系统中也存在。