【问题标题】:How to run a task one day per week between given time window in Linux?如何在 Linux 的给定时间窗口之间每周运行一天任务?
【发布时间】:2018-08-26 20:56:42
【问题描述】:

我只需要在一周中的某一天,在给定的时间窗口之间运行一次特定的 bash。

为了清楚起见,在我的例子中,这些条件是:“每周四下午 5 点到 9 点之间只运行一次 bash 脚本”。条件可以简化为“每周四下午 5 点后运行 bash 脚本

我查看了 crontab 并成功在给定日期的给定时间运行我的脚本

0 17 0 0 4 /path/my_ba.sh

然而,我很难引入这个概念——仅在给定小时后一次——。有没有人知道可以进行这种工作的工具?


PS:我想我可以结合多个 bash 和 crontab 行来完成它,但我正在寻找更优雅的解决方案。

【问题讨论】:

标签: linux bash automation cron periodic-task


【解决方案1】:

将 cron 作业设置为星期四下午 5 点。
休眠 0 到 3*3600 秒之间的随机时间。
然后执行你的代码。

0 17 0 0 4 bash -c 'sleep $((RANDOM%14400)); exec /path/my_ba.sh'

【讨论】:

    猜你喜欢
    • 2015-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-09
    • 2012-01-26
    • 2013-12-21
    • 1970-01-01
    相关资源
    最近更新 更多