Поиск по сайту:

10 практических примеров команд Linux Cal/NCal для начинающих


На этой странице

  1. 1. Как отключить подсветку сегодняшней даты?
  2. 2. Как отобразить календарь на конкретный месяц или полный год?
  3. 3. Как напечатать номер недели под каждым столбцом недели?
  4. 4. Как отобразить предыдущий, текущий и следующий месяц за один раз?
  5. 5. Как добавить указанное количество месяцев до или после текущего в выводе?
  6. 6. Как запустить cal в режиме ncal и наоборот?
  7. 7. Как изменить день начала недели?
  8. 8. Как отобразить конкретный месяц и год?
  9. 9. Как вывести дату Пасхи?
  10. 10. Как отображать юлианский календарь и юлианские дни?

Если вы хотите быстро просмотреть календарь на терминале в Linux, вам следует использовать cal — это инструмент командной строки. По умолчанию команда отображает в выходных данных текущий месяц.

Есть еще одна похожая утилита, получившая название ncal. Он отличается от cal тем, что предлагает альтернативный макет, больше опций и дату Пасхи.

В этой статье мы подробно обсудим оба этих инструмента, дав вам представление об их возможностях и наборе функций.

1. Как отключить выделение сегодняшней даты?

Как вы можете видеть в выводе по умолчанию выше, текущая дата выделена белым цветом. Однако, если вы хотите, вы можете отключить эту подсветку. Это можно сделать с помощью параметра командной строки -h:

2. Как отобразить календарь на конкретный месяц или полный год?

Хотя команды cal/ncal отображают текущий месяц по умолчанию, вы можете использовать параметр командной строки -m, чтобы отобразить определенный месяц. Для этой опции требуется числовое значение (1-12), представляющее месяц, который вы хотите отобразить в команде.

Например, следующая команда отобразит январь 2017 года:

кал -м1

Точно так же календарь на весь год можно отобразить с помощью параметра командной строки -y.

кал -у [год]

3. Как напечатать номер недели под каждой колонкой недели?

Чтобы напечатать номер недели под каждым столбцом недели, используйте параметр командной строки -w. На следующем снимке экрана показано, как отображаются номера недель (последняя выделенная строка):

4. Как отображать предыдущий, текущий и следующий месяц за один раз?

Команды cal/ncal также отображают предыдущий, текущий и следующий месяц вокруг сегодняшнего дня. Для этого вам нужно передать параметр командной строки -3.

5. Как добавить в вывод заданное количество месяцев до или после текущего?

Если вы хотите, вы можете сделать так, чтобы кал/нкал отображал определенное количество месяцев после текущего месяца. Это можно сделать с помощью параметра командной строки -A, который требует указать количество дополнительных месяцев, которые вы хотите отобразить.

Например, на следующем снимке экрана показано, как можно отобразить 2 месяца (после текущего месяца) в выходных данных:

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

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

кал -B4 -A3

6. Как запустить cal в режиме ncal и наоборот?

Хотя и cal, и ncal имеют отдельные макеты вывода, вы можете заставить их переключиться на другие макеты. Чтобы заставить cal переключиться на раскладку ncals, используйте параметр командной строки -N. Точно так же параметр -C заставляет ncal переключиться в режим вывода cals.

Примечание. Параметр -b для ncal также делает то же самое (справочная страница говорит, что используйте этот параметр, если вы хотите использовать старый формат для вывода ncal).

7. Как изменить день начала недели?

И cal, и ncal предполагают, что первым днем недели является воскресенье. Это по умолчанию. Однако, если вы хотите, вы можете изменить это, и вместо этого недели начинаются с понедельника. Это можно сделать с помощью параметра -M (работает только для ncal).

8. Как отображать конкретный месяц и год?

Предположим, вы хотите, чтобы команды cal/ncal отображали месяц/год, отличный от текущего месяца/года. Это можно сделать с помощью параметра командной строки -d. Эта опция требует, чтобы год и месяц передавались в формате гггг-мм.

Например, чтобы отобразить март 2016 года, используйте следующую команду:

кал-д 2016-03

9. Как отображать дату Пасхи?

Здесь вам понадобятся параметры командной строки -o и -e. В то время как первый указывает команде ncal отображать дату православной Пасхи (для греческой и русской православных церквей), второй запрашивает ncal отображать дату Пасхи для западных церквей.

10. Как отображать юлианский календарь и юлианские дни?

Чтобы отобразить юлианский календарь с помощью ncal, используйте параметр командной строки -J .

А для юлианских дней используйте параметр командной строки -j (поддерживается как cal, так и ncal):

И cal, и ncal весьма полезны, если ваша работа связана с использованием календарей в командной строке. Команда ncal немного лучше, чем cal, когда речь идет о функциях (или параметрах командной строки). Попробуйте все приведенные здесь примеры, а если сомневаетесь, обратитесь к справочной странице команд. Команды в этом руководстве были протестированы в Ubuntu и Debian Linux, но они будут работать так же и в других дистрибутивах, таких как CentOS.