Get last day of last month (ksh ) # get current month month=$(expr `date +%m` - 1 ) # get current year year=`date +%Y` # last day day=`cal $month $year | grep -v "^$" | tail -1 | awk '{print $NF}'` eg cal 2 2008 | grep -v "^$" | tail -1 | awk '{print $NF}' 29