linux下如何取前一天日期
前一天的日期
date -d"1 day ago" +"%y%m%d"
前一个月的日期
date -d"1 month ago" +"%y%m%d"
类似的还有
date -d"-1 day ago 1 month ago" +"%y%m%d"
date -d"1 day ago -1 year ago 1 month ago" +"%y%m%d"
freebsd下
前一天的日期
date -v-1d +"%y%m%d"
前一个月的日期
date -v-md +"%y%m%d"
类似的还有
date -v-1d -v-1m +"%y%m%d"
date -v-1d -v-1m -v-1y +"%y%m%d"
采用perl来实现:
perl -e "print sprintf '%04d-%02d-%02d',(localtime(time()-86400))[5]+1900,(localtime(time()-86400))[4]+1,(localtime(time()-86400))[3]"
在aix,hpux上面只能用一段shell角本来实现,思想就是把年,月,日取出来,然后减1。
CURR_DAY=`date +%d`
CURR_MONTH=`date +%m`
CURR_YEAR=`date +%Y`
C_DAY=`expr ${CURR_DAY} - 1`
TARGET=`echo $CURR_YEAR-$CURR_MONTH-$C_DAY`