A maneira como fui fazer o último dia do mês anterior é:
cal $month $year | awk 'NF {DAYS = $NF}; END {print DAYS}'
Usando os marcadores possíveis, posso obter os meses anteriores e imprimir o último dia do mês:
cal 04 2017 | awk 'NF {DAYS = $NF}; END {print DAYS}'
Saída:
30
Se houver uma maneira mais fácil ou mais curta, por favor, estou aberto a todas as sugestões.