Unix獲取前一天日期(Linux不知道可以不以)

tolilong發表於2015-12-03
xxxxxxxxxx [/]#get_before_date
12/02/15

cat /usr/bin/get_before_date
Y="$(date +"%y")"
Y1="$(date +"%Y")"
M="$(date +"%m")"
D="$(date +"%d")"
YY=`expr $Y - 1`
MM=`expr $M - 1`
DD=`expr $D - 1`
MM=`printf "%02d" $MM`
DD=`printf "%02d" $DD`
dd=$Y1$MM
dad=`get_mon_days $dd`
#be_date=$Y$M$DD
be_date="$M/$DD/$Y"
if [ $D -eq 01 ]
then
if [ $M -ne 01 ]
then
#be_date=$Y$MM$dad
be_date="$MM/$dad/$Y"
fi
if [ $M -eq 01 ]
               then
#                       be_date=$YY"1231"
                       be_date="12/31/$YY"
               fi
  fi
       echo $be_date


cat  /usr/bin/get_mon_days
Y=`expr substr $1 1 4`
       M=`expr substr $1 5 2`

       r1=`expr $Y \% 4`
       r2=`expr $Y \% 100`
       r3=`expr $Y \% 400`

       case $M in
       01|03|05|07|08|10|12) days=31;;
       04|06|09|11) days=30;;
       esac
       if [ $M -eq 02 ]
       then
               if [ r1 -eq 0 -a r2 -ne 0 -o r3 -eq 0 ]
               then
                       days=29
               else
                       days=28
               fi
       fi
       echo $days

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24237320/viewspace-1852395/,如需轉載,請註明出處,否則將追究法律責任。

相關文章