shell腳本獲取最近一周週五的日期
在这里插入代码片#! /bin/bash
DATAX_HOME=/opt/module/datax
#1、判断参数是否传入
if [ $# -lt 1 ]
then
echo "必须传入all/表名..."
exit
fi
#2、判断日期是否传入
[ "$2" ] && datestr=$2 || datestr=$(date -d '-1 day' +%F)
# 获取输入日期的星期几(1-7,星期一为1,星期天为7)
day_of_week=$(date -d $datestr +%u)
# 计算需要向前的天数,以获取最近的上周五日期
days_back=$((($day_of_week + 2) % 7))
# 计算最近的上周五日期
last_friday=$(date -d "$datestr -$days_back days" +"%Y-%m-%d")
echo "输入日期: $datestr"
echo "最近的上周五日期: $last_friday"```