Bash 脚本:如果是三月或十月的最后一个星期日,则停止/中止?

Bash 脚本:如果是三月或十月的最后一个星期日,则停止/中止?

在以下情况下如何停止/中止 bash 脚本:

  • 是三月的最后一个星期日吗?或者
  • 十月的最后一个星期日是?

两者都应在此处进行检查,如果是,则应停止/中止 bash 脚本。

提前致谢。

编辑:也许是这样

weekday=$(date +%a)
day=$(date +%d)
month=$(date +%m)

if [[ ( $month == 03 || $month == 10 ) && $weekday = "Sun" && $day > 24 ]]
then
 exit 1
fi

答案1

要让脚本在 sh 中工作(因此它在 cron 中也能工作),请执行以下操作:

#!/bin/sh

eval $(date +'m=%m d=%d dow=%w')

if ( [ "$m" -eq 03 ] || [ "$m" -eq 10 ] ) && [ "$dow" -eq 0 ] && [ "$d" -gt 24 ]
then
    exit 1
fi

相关内容