获取前一天时间的SH(Z)

本文介绍了一种使用Shell脚本来计算前一天日期的方法。通过解析当前日期并根据月份和年份调整天数,脚本能够准确地计算出前一天的具体日期。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[color=indigo]CurYear=`date +%Y`
CurMonth=`date +%m`
CurDay=`date +%d`

GetYear="$CurYear"
GetMonth="$CurMonth"
GetDay="`expr $CurDay - 1`"


if [ "$GetDay" -le 0 ] ; then
GetMonth=`expr $CurMonth - 1`
if [ "$GetMonth" -le 0 ] ; then
GetYear=`expr $CurYear - 1`
GetMonth=12
fi
case "$GetMonth"
in
1|3|5|7|8|10|12)
GetDay=31;;
4|6|9|11)
GetDay=30;;
2)
if [ `expr "$CurYear" % 400` -eq 0 ] ; then
GetDay=29
elif [ `expr "$CurYear" % 4` -eq 0 -a `expr "$CurYear" % 100` -ne 0 ] ; then
GetDay=29
else
GetDay=28
fi
esac
fi
if [ `echo "$GetMonth" | wc -m` -ne 3 ] ; then
GetMonth=0$GetMonth
fi
if [ `echo "$GetDay" | wc -m` -ne 3 ] ; then
GetDay=0$GetDay
fi
echo
echo $GetYear/$GetMonth/$GetDay
echo [/color]

另外,可通过DATE命令,不需自己编写脚本获取
gday=`date --date="1 days ago" +%F`
gday=`date -d="1 days ago" +%F`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值