¿Cómo imprimir el calendario en orden inverso en UNIX?

¿Cómo imprimir el calendario en orden inverso en UNIX?

Quiero imprimir el calendario en la terminal usando cal -yel comando, pero en orden inverso. ¿Qué debo agregar para imprimir el calendario de diciembre a enero?

Respuesta1

Cuando esté satisfecho con el resultado en 1 columna:

for m in {12..1}; do cal $m 2016; done

Realmente al revés, pero probablemente no sea lo que quieres:

cal -y | tac

Invertido en 3 columnas por fila de 3 meses:

cal -y | perl -0777 -ne 's/\s*$//;@r=split /(\n(?=  +[A-Z]))/; print reverse @r';

Y con el año todavía en la cima:

cal -y | perl -n0777e '
    s/\s*$//; @r=split /(\n(?= +[A-Z]))/; $y=shift @r;
    print $y,"\n",reverse @r;'

información relacionada