Я хочу напечатать календарь в терминале, используя команду cal -y , но в обратном порядке. Что я должен добавить, чтобы распечатать календарь с декабря по январь?

1 ответ1

2

Когда вы удовлетворены выводом в 1 столбце:

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

Действительно наоборот, но, вероятно, не то, что вы хотите:

cal -y | tac

Перевернуто в 3 столбца по строке 3 месяца:

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

И с годом все еще на вершине:

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .