有些操作系统支持 date 命令直接获取昨天的日期,比如
linux:
strdate=`date -1d +"%Y%m%d"`
系统的不同,导致date命令有的支持有的不支持直接获取,这里给一个通用的脚本:
#取昨天的时间
month=`date +%m`
day=`date +%d`
year=`date +%Y`
month=`expr $month + 0`
day=`expr $day - 1`
if [ $day -eq 0 ]; then
month=`expr $month - 1`
if [ $month -eq 0 ]; then
month=12
day=31
year=`expr $year - 1`
else
case $month in
1|3|5|7|8|10|12) day=31;;
4|6|9|11) day=30;;
2)
if [ `expr $year % 4` -eq 0 ]; then
if [ `expr $year % 400` -eq 0 ]; then
day=29
elif [ `expr $year % 100` -eq 0 ]; then
day=28
else
day=29
fi
else
day=28
fi
;;
esac
fi
fi
month=`printf "%02d" $month`
day=`printf "%02d" $day`