10 практических примеров команд Linux Cal/NCal для начинающих
На этой странице
- 1. Как отключить подсветку сегодняшней даты?
- 2. Как отобразить календарь на конкретный месяц или полный год?
- 3. Как напечатать номер недели под каждым столбцом недели?
- 4. Как отобразить предыдущий, текущий и следующий месяц за один раз?
- 5. Как добавить указанное количество месяцев до или после текущего в выводе?
- 6. Как запустить cal в режиме ncal и наоборот?
- 7. Как изменить день начала недели?
- 8. Как отобразить конкретный месяц и год?
- 9. Как вывести дату Пасхи?
- 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.