* 5-10 * * *
将在所述时间之间触发脚本,但我如何控制计数?
顺便说一句,计数和时间可以是任意的,这意味着它将是动态的而不是静态的。只需给出一个静态数字以便更好地理解。
答案1
您的脚本的一个问题是它会每分钟运行一次(因为第一个“*”)。
由于您有 6 个小时,因此仅运行 4 次 cron 是相当困难的。
一个解决方案可能是:
0 6,7,8,9 * * * /path/command
答案2
你们都搞不懂 cron。它不是“动态”的 - 当你要求它运行时,它就会运行,没有变化。
如果您希望在 5 到 10 之间写 4 次,那么就选 4 次,写 4 行。“一行写完”根本没有意义,而且如果要压缩的话,意义也微乎其微。
IE:
17 5 * * * (command)
37 6 * * * (command)
17 8 * * * (command)
37 9 * * * (command)
或者你可能真的想要更多类似的东西:
1 5 * * * (command)
37 6 * * * (command)
17 8 * * * (command)
59 9 * * * (command)
或者如果你喜欢压缩(即使有积分,奖励的分数也很少):
17 5,8 * * * (command)
37 6,9 * * * (command)
除非你实际上指的是 5 到 10下午(在这种情况下) :
17 17,20 * * * (command)
37 18,21 * * * (command)
如果您对这里的实际动态行为有一些需求(我会假装怀疑),那么您将编写一个脚本来动态创建一个 crontab,该 crontab 以非动态的方式执行您想要完成的操作,直到您下次更改 crontab。