Команды
cal
, ncal
в Linux входят в пакет bsdmainutils и позволяют отображать календарь и (как написано в мане) дату Пасхи.По сути cal является ссылкой на программу ncal
, но по умолчанию cal
выводит календарь с днями по горизонтали и начиная с воскресения, а ncal
выводит дни по вертикали и начинает отсчет с понедельника.Особенностью этих команд является вывод даты от первого года н. э. до 9999 года н. э.
Ключи.
В документации говориться что ключи
-N
- перевод в режим ncal
-С
- перевод в режим cal
но это не совсем так:
Для того, чтобы вывод команды
ncal
выглядел как вывод команды cal
нужно воспользоваться дополнительным ключом:-S
- Начинать неделю с Воскресенья.Теперь очень важный момент: при использовании ключей
-S
и -C
очень важно их поставить именно в таком порядке (ncal -SC
), иначе будет выведена ошибка.-M
- Начинать неделю с Понедельника. Но, как ни странно, в одиночку этот ключ не работает с cal
, и его нужно использовать с ключом -N. А ncal, как уже говорилось, показывает дни с Понедельника.-1
- Показывает только текущий месяц (стоит по умолчанию).-3
- Показывает предыдущий и последующий месяц.-h
- Отключает подсветку сегодняшнего дня.-y
- Показывает все месяцы текущего года.-j
- Показывает календарь с номерами дней в году (первый день - 1 января).-m
номер_месяца - Показывает запрошенный месяц.Можно после цифры использовать флаг f, что бы показать предыдущий месяц, или флаг p что бы показать последующий месяц. Пример:$ncal -m 4f покажет, в моем случае, апрель 2013 года
$ncal -m 4p
покажет апрель 2012 года$ncal -m 12f
покажет декабрь 2012 года$ncal -m 12p
покажет декабрь 2011 годаЕщё замечена такая вещь:
-m4p
- можно; -m 4p
- можно; -m4 p
- нельзя; -m 4 p
- нельзя.-A
количество_месяцев - Показывает выбранное количество месяце после выбранной даты. Если использовать совместно с -y (показать все месяцы текущего года), то поддерживает отрицательные значения, например : $ncal -y -A2
- выведет календарь текущего года и ещё 2 первых месяцев из следующего;$ncal -y -A-2
- выведет календарь текущего года без двух последних месяцев.-B количество_месяцев - Показывает выбранное количество месяцев до выбранной даты. Если использовать совместно с -y (показать все месяцы текущего года), то поддерживает отрицательные значения, например:
$ncal -y -B2
- выведет текущий год и перед ним 2 последних месяца из прошлого года;$ncal -y -B-2
- выведет текущий год без двух месяцев в начале года.Ниже приведены ключи используемые только в ncal.
-J
- Показывает Юлианский календарь, в сочетании с ключом -е
отображает дату Пасхи по Юлианскому календарю. Эта опция работает только с командой ncal
.-e
- Выводит дату Пасхи (для западных Церквей).-o
- Выводил дату Пасхи (для Православной Греческой и Русской церкви)-w
- Показывает номер недели.-b
- Тоже самое, что и -C, только в мануале называется "использовать старый формат"-d yyyy-mm
- Используется для выбора текущей даты при переходе на дату.-H yyyy-mm-dd
- Назначает эту дату текущей. Используется для отладки подсветки.< Последние два ключа тяжело осознать без примера:Обратите внимание, -d заставляет выбранный месяц отразиться как текущий, а -H подсвечивает выбранное число. Обе эти функции нужны для отладки скриптов.
-H можно использовать и немного по другому:В данном случае мы назначаем число 15 апреля будущего года как текущее и просим показать нам в календаре апрель будущего месяца.
-s код_страны
- Задает код страны по которой будет переход с Юлианского на Григорианский стиль. Если код_страны не задан, то ncal пытается определить его по локали, и если не может, то берет число когда перешла Британия и её колонии.ncal
принимает два способа присвоения кода_страны, как пример: -sGB
и -s 'GB'
Применение.
Самый простой способ использования это просто набрать в строке
В этом случает будет выведен указанный месяц, как пример:
cal
или ncal
по вкусу и нажать Enter. Но можно посмотреть для просмотра определённого месяца так: ncal
месяц годВ этом случает будет выведен указанный месяц, как пример:
Если часто работать в консоли и нужно периодически смотреть в календарь, то можно сделать алиас:
открываем файл .bashrc:$nano .bashrc
и в конце дописываем:
alias cal='ncal -b3'
после этого жмем Ctrl+X затем Y и наконец Enter.
перезапускам bash.
После этого при вызове
cal
у вас будет появляться 3 месяца, один после, один до текущего и будут работать все ключи от команды ncal. Но никто вам не запрещает воспользоваться ключиками и поправить положение, -y
будет показывать год, -m
будет показывать выбранный месяц... Получается очень удобно.Ещё, на просторах интернета лежат статьи как использовать эти команды для скриптов, в том числе и на сайте, но это уже тема для другой статьи.
Комментариев нет :
Отправить комментарий