linux过滤掉休息日
- 过滤周六日
- 过滤节假日
过滤周六日,提取weekday=`date -d "$start_day" +%w`,过滤0和6
由于节假日不具有规律,单独处理,一个一个去判断
elif [[ $start_day -eq '20210211' ]] || [[ $start_day -eq '20210212' ]] || [[ $start_day -eq '20210215' ]] || [[ $start_day -eq '20210216' ]] || [[ $start_day -eq '20210217' ]];then
休息日过滤器完整代码
#!/bin/bash
start_day=20210102
end_day=20210311
while [[ $end_day -ge $start_day ]]
do
weekday=`date -d "$start_day" +%w`
if [[ $weekday -eq 0 ]] || [[ $weekday -eq 6 ]];then
echo $start_day 是休息日
elif [[ $start_day -eq '20210211' ]] || [[ $start_day -eq '20210212' ]] || [[ $start_day -eq '20210215' ]] || [[ $start_day -eq '20210216' ]] || [[ $start_day -eq '20210217' ]];then
echo $start_day 是春节
else
echo $start_day 正常
fi
start_day=`date -d "$start_day +1 day " +%Y%m%d`
done
这是一个使用Linux shell脚本过滤休息日(周六和周日)和特定节假日的示例。脚本通过检查日期的weekday属性来过滤掉周末,并通过一系列条件判断过滤指定的节假日。该脚本对于自动化任务中的日期筛选非常有用。
18万+

被折叠的 条评论
为什么被折叠?



