当前位置: 技术问答>linux和unix
各位大人,怎样显示前一两天的日期!
来源: 互联网 发布时间:2015-03-10
本文导语: 有没有现成的命令实现昨天的日期,自动显示前一天或者是几天的日期,例如:今天是2003-5-22日我需要得到03021这个日期,我写了一个比较笨的shell,虽然能够完成可是改动起来比较费劲,而且显得太笨了,请问能不...
有没有现成的命令实现昨天的日期,自动显示前一天或者是几天的日期,例如:今天是2003-5-22日我需要得到03021这个日期,我写了一个比较笨的shell,虽然能够完成可是改动起来比较费劲,而且显得太笨了,请问能不能提供好的方法解决这个问题!谢谢!
我把我的shell程序贴出来,请大家帮忙。
我把我的shell程序贴出来,请大家帮忙。
|
linux下,可以使用这样的表示
date +%Y-%m-%d -d "2 days ago"
date +%Y-%m-%d -d "2 month ago"
date +%Y-%m-%d -d "2 weeks ago"
date +%Y-%m-%d -d "2 days ago"
date +%Y-%m-%d -d "2 month ago"
date +%Y-%m-%d -d "2 weeks ago"
|
#!/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 "tt""$GetYear""$GetMonth""$GetDay"
echo
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 "tt""$GetYear""$GetMonth""$GetDay"
echo
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。