如何用shell 实现某天减1天的日期

littlekuku1 2003-01-23 11:32:58
如何用shell 实现某天减1天的日期:
...全文
496 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
gdream 2003-01-23
  • 打赏
  • 举报
回复
#!/bin/sh

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 " === Get Last Date ==="
echo
echo "\t\t""$GetYear""$GetMonth""$GetDay"
echo
littlekuku1 2003-01-23
  • 打赏
  • 举报
回复
谢谢

23,223

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧