在每M分钟后运行脚本的Linux中的cron作业的替代方案?

时间:2015-12-01 06:47:16

标签: linux cron crontab

我需要在每M分钟后运行一个脚本文件。这个M是可配置的。现在我使用了如下的cron条目。

*/M * * * * /tmp/test.sh

但是,通过使用上述逻辑,M值被限制为5,10,15,30等,例如,M不能设置为28。我可以为此做一个后台服务,但我想知道有没有替代cron job。

2 个答案:

答案 0 :(得分:1)

定义每分钟运行一次的cron作业。让它调用一个检查当前时间的脚本,并仅在当前时间是M的倍数时执行命令。

这样做的一种方法是获得platforms/android/assets/www的结果(这是自大纪元以来的秒数,1970-01-01 00:00:00 GMT),除以60得到分钟,然后计算余数模数M.在bash:

date +%s

答案 1 :(得分:1)

这是使用at个工作实现它的简单方法。

在您的脚本中添加一行,在当前开始后28分钟或当前开始后28分钟自行安排,具体取决于您的需求。

#!/bin/bash
#uncomment if it requires to start next run 28 minutes after this script started regardless of how long this job runs
# at now + 28 min < $0
# The rest of your commands go here...
# commands ....
# uncomment if it's desired to start the next run 28 minutes after this job ends
# at now + 28 min < $0

希望这会有所帮助。如果您的脚本需要特定的shell,请在调用at SHELL=/bin/bash at now + 28 min < $0时设置SHELL环境。