构建一个cron表达式

时间:2017-03-28 13:03:31

标签: ruby-on-rails ruby linux cron crontab

我想为以下内容构建一个cron表达式 - 应该每两周运行一次,从每个月的特定日期开始。

我试着像这样构建表达式 -

5 4 2/14 * * *(这里我想在每个14月的04:05从2到31运行cron)

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:2)

那么,你希望它在第二天,然后14天以及14天后再次运行? 由于这不是一个庞大的列表,只需提供该列表:

5 4 2,16,30 * *

答案 1 :(得分:0)

5 4 * * 1 test $(($(date +%W)%2)) -eq 1 && your_command

好的,让它每两周运行的棘手部分是知道一周的哪一天是第一个第二天。我们假设它是星期一,这个星期一和本周(13号)。我们将专注于让它每隔一天运行一次。

5 4 * * 1每个星期一的脚本或命令都在04:05工作

$(($(date +%W)%2))评估数字周表达并得到他的模块(1奇数或0标准杆)

test $(($(date +%W)%2)) -eq 1如果一周是奇数,那就错了,我们避开标准周。我们可以将它改为-eq 0,以防它需要在标准周内工作

&& your_command如果上一个条件有效,则运行脚本或命令