如何配置cron以多个随机间隔运行?

时间:2018-08-23 23:13:10

标签: cron

我正在开发一个新项目,我想设置一个cron,使其每6-8小时随机运行一次。对于实现此目标的最佳方法的任何建议,将不胜感激。

1 个答案:

答案 0 :(得分:0)

每6个小时运行一次cron:

0 */6 * * * /path/to/script.sh

现在,在您的bash脚本中:

#!/bin/bash
maxdelay=$((2*60)) # 2 hours converted to minutes
delay=$(($RANDOM%maxdelay)) # a random delay
(sleep $((delay*60)); /path/to/script.sh) & # background a subshell to wait, then run the script

您还可以将anacron用于RANDOM_DELAY功能。