|
Yesterday's date function
I am using this function to calculate yesterday's date and return it in the following format: Jan 09
date '+%b %d %Y' |
{
read MONTH DAY YEAR
DAY=`expr "$DAY" - 1`
case "$DAY" in
0)
MONTH=`expr "$MONTH" - 1`
case "$MONTH" in
0)
MONTH=12
YEAR=`expr "$YEAR" - 1`
;;
esac
DAY=`cal $MONTH $YEAR | grep . | fmt -1 | tail -1`
esac
((DAY < 10)) && DAY="0"$DAY
}
On the last day of December, it returned 31 and I wanted it to return Dec 31. Can someone tell me what could be wrong? After I return the value, I then am using it to grep a logfile, looking for yesterday's date.
|