Linux команды · 3 min read · Sep 16, 2025
10 Практических Примеров Команд Linux Cal/NCal для Начинающих

Если вы хотите быстро просмотреть календарь в терминале Linux, то cal — это командный инструмент, который вам следует использовать. По умолчанию команда отображает текущий месяц в выводе.
Существует еще одна аналогичная утилита, называемая ncal. Она отличается от cal тем, что предлагает альтернативный макет, больше опций и дату Пасхи.
В этой статье мы подробно обсудим оба этих инструмента, чтобы вы могли понять их возможности и набор функций.
1. Как отключить выделение сегодняшней даты?
Как вы можете видеть в выводе по умолчанию выше, текущая дата выделена белым цветом. Однако, если вы хотите, вы можете отключить это выделение. Это можно сделать с помощью параметра командной строки -h:
2. Как отобразить календарь на определенный месяц или полный год?
Хотя команды cal/ncal по умолчанию отображают текущий месяц, вы можете использовать параметр командной строки -m, чтобы отобразить определенный месяц. Этот параметр требует числового значения (1-12), представляющего месяц, который вы хотите отобразить.
Например, следующая команда отобразит месяц январь 2017 года:
cal -m1
Аналогично, календарь на полный год можно отобразить с помощью параметра командной строки -y.
cal -y [год]

3. Как напечатать номер недели под каждой колонкой недели?
Чтобы напечатать номер недели под каждой колонкой недели, используйте параметр командной строки -w. Следующий скриншот показывает, как отображаются номера недель (последняя выделенная строка):
4. Как отобразить предыдущий, текущий и следующий месяц сразу?
Команды cal/ncal также отображают предыдущий, текущий и следующий месяц вокруг сегодняшнего дня. Для этого вам нужно передать параметр командной строки -3.

5. Как добавить указанное количество месяцев до или после текущего в выводе?
Если вы хотите, вы можете заставить cal/ncal отображать определенное количество месяцев после текущего месяца. Это можно сделать с помощью параметра командной строки -A, который требует указания количества дополнительных месяцев, которые вы хотите отобразить.
Например, следующий скриншот показывает, как вы можете отобразить 2 месяца (после текущего месяца) в выводе:

Аналогично, если вы хотите отобразить определенное количество месяцев перед текущим месяцем, используйте параметр командной строки -B.

Оба этих параметра также могут использоваться вместе. Например, если вы хотите отобразить календарь с ноября 2016 года по июнь 2017 года, следующая команда, которую вам нужно выполнить:
cal -B4 -A3

6. Как запустить cal в режиме ncal и наоборот?
Хотя cal и ncal имеют отдельные макеты вывода, вы можете заставить их переключиться на макет другого. Чтобы заставить cal переключиться на макет ncal, используйте параметр командной строки -N. Аналогично, параметр -C заставляет ncal переключиться на режим вывода cal.
Примечание: Параметр -b для ncal также делает то же самое (в справочной странице указано использовать этот параметр, когда вы хотите получить старый стиль формата для вывода ncal).
7. Как изменить первый день недели?
Обе команды cal и ncal предполагают, что воскресенье — это первый день недели. Это по умолчанию. Однако, если вы хотите, вы можете изменить это и сделать так, чтобы недели начинались с понедельника. Это можно сделать с помощью параметра -M (работает только для ncal).
8. Как отобразить определенный месяц и год?
Предположим, вы хотите, чтобы команды cal/ncal отображали месяц/год, отличный от текущего месяца/года. Это можно сделать с помощью параметра командной строки -d. Этот параметр требует указания года и месяца в формате yyyy-mm.
Например, чтобы отобразить март 2016 года, используйте следующую команду:
cal -d 2016-03

9. Как отобразить дату Пасхи?
Параметры командной строки -o и -e — это то, что вам нужно здесь. Первый говорит команде ncal отобразить дату православной Пасхи (для греческих и русских православных церквей), второй — попросить ncal отобразить дату Пасхи для западных церквей.
10. Как отобразить юлианский календарь и юлианские дни?
Чтобы отобразить юлианский календарь с помощью ncal, используйте параметр командной строки -J.
А для юлианских дней используйте параметр -j (поддерживается как cal, так и ncal):

Обе команды cal и ncal довольно полезны, если ваша работа связана с использованием календарей в командной строке. Команда ncal немного лучше, чем cal, когда дело доходит до функций (или параметров командной строки). Обязательно попробуйте все примеры, упомянутые здесь, и в случае сомнений обратитесь к справочной странице команд. Команды в этом руководстве были протестированы на Ubuntu и Debian Linux, но они будут работать так же и на других дистрибутивах, таких как CentOS.
Get new posts in your inbox
No spam. Unsubscribe anytime.