Cron-如何在一个月的特定日期之后的第一个工作日进行工作?

时间:2020-02-12 19:56:40

标签: unix cron

我们想安排一个工作,该工作在第12个工作日或第12个工作日之后的第一个工作日进行。我可以在cron中指定吗?

1 个答案:

答案 0 :(得分:2)

您无法在cron中定义这样的逻辑,通常的方法是将其添加到要运行的脚本中。因此,每天像这样运行脚本:

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

并添加到内部

if [ "$(date +%d%m)" == "0101" ]
then rm -f /var/run/flag
fi
if [ $(date +%d) -ge 12 ] && [ $(date +%w) -gt 0 ] &&  [ $(date +%w) -lt 6 ] && [ ! -f /var/run/flag ]
then <do the work>
touch /var/run/flag
fi
exit

另外,据我所知,您应该注意只运行一次