How to get number of days in a month
cal $(date +"%m %Y") | awk 'NF {DAYS = $NF}; END {print DAYS}'
31
cal $(date +"%m %Y") | awk 'NR==1 {MON_YEAR=$1 " " $2};NF {DAYS = $NF}; END {print MON_YEAR " - " DAYS}'
March 2013 - 31
cal 4 2013 | awk 'NF {DAYS = $NF}; END {print DAYS}'
30
Quickly get number of days in the next month
(April 2013)
cal $(date +"%m %Y" --date "next month") | awk 'NF {DAYS = $NF}; END {print DAYS}'
30