24 марта 2016

Как расчитать дату празднования Пасхи в терминале Linux

В Терминале используется большое количество всевозможных встроенных команд (утилит). Встроенные - это команды, которые присутствуют по умолчанию в перечне терминальных команд любого дистрибутива Linux.
В этой статье я хочу рассказать об одной из них, которая выводит в терминале данные календаря в различных вариациях - это утилита cal или ncal.
В принципе утилиты cal и ncal делают одно и тоже - отображают простой календарь. Если аргументы не указаны, то выводится календарь на текущий месяц, с той лишь разницей, что команда cal выводит по умолчанию календарь на текущий месяц в горизонтальном расположении, а команда ncal - в вертикальном.

cal


ncal


Теперь давайте посмотрим на возможности использования обоих календарей с применением различных дополнительных аргументов. Для этого выполним команду cal -w:


Как видно на снимке, у утилиты ncal больше возможностей для использования. В частности в ncal можно использовать аргументы -e и -o, которые определяют дату празднования Пасхи.
Как известно, есть Православная и Католическая Пасхи.
Для расчёта Католической Пасхи используется аргумент -e, а для Православной аргумент -o. По умолчанию дата Пасхи выводится на текущий год.

Католическая Пасха

ncal -e


Православная Пасха
ncal -o


Как видно на снимках, Католическая Пасха состоится в это воскресенье (27 марта), а Православная - 1 мая.

Чтобы рассчитать дату Пасхи на последующие годы, нужно в каждой из команд добавить искомый год. Например:

Православная в 2017 г.

ncal -o 2017


Католическая в 2017 г.

ncal -e 2017


Как видно из вывода команд, в следующем году день празднования Пасхи совпадает для Православных и Католиков на 16 апреля.

Удачи.

35 комментариев :

  1. Здо́рово!
    Пытаюсь скопипастить вывод ncal -y 2017 в LO Calc — не могу подобрать параметры, чтоб столбцы не разваливались :(

    ОтветитьУдалить
    Ответы
    1. ==не могу подобрать параметры, чтоб столбцы не разваливались== Скопируйте календарь на год прежде из терминала в текстовый редактор (gedit и т.д.), а затем в LO Calc.

      Удалить
    2. Скопировал в LO Writer, отобразил непечатаемые смволы. Всё отформатировано пробелами. Если убрать лишние, то LO Calc нормальную календарную сетку за милую душу "нарисует".

      Кстати, когда-то я видел плагин для GIMP, использующий вывод cal, но моноширинный шрифт меня не устроил.

      Удалить
    3. Используйте моноширинный шрифт.

      Удалить
  2. Побольше бы статей о терминале...

    ОтветитьУдалить
  3. попробовал в Manjaro.
    что-то пошло не так:

    [valery@valery-pc ~]$ ncal -o
    bash: ncal: команда не найдена
    [valery@valery-pc ~]$ cal
    Март 2016
    Пн Вт Ср Чт Пт Су Вс
    1 2 3 4 5 6
    7 8 9 10 11 12 13
    14 15 16 17 18 19 20
    21 22 23 24 25 26 27
    28 29 30 31

    [valery@valery-pc ~]$ cal -o
    cal: неверный ключ — «o»

    Использование:
    cal [options] [[[day] month] year]

    Отобразить календарь или какую-то его часть.
    Without any arguments, display the current month.

    Параметры:
    -1, --one show only a single month (default)
    -3, --three show three months spanning the date
    -n, --months show num months starting with date's month
    -s, --sunday Sunday as first day of week
    -m, --monday Monday as first day of week
    -j, --julian output Julian dates
    -y, --year show the whole year
    -Y, --twelve show the next twelve months
    -w, --week[=] show US or ISO-8601 week numbers
    --color[=] colorize messages (auto, always or never)
    colors are enabled by default

    -h, --help показать эту справку и выйти
    -V, --version вывести номер версии и выйти


    Для более детальной информации смотрите cal(1).
    [valery@valery-pc ~]$

    ОтветитьУдалить
    Ответы
    1. ==Попробовал в Manjaro .... ncal: команда не найдена==
      yaourt -S bsdmainutils

      Удалить
    2. Спасибо, Максим.
      С ncal - получилось.
      С cal -o - результат прежний.
      Да и ладно.Не критично.)

      Удалить
    3. Валерий, так в статье ведь об этом говорится, что аргументы -o и -e работают только с ncal.)

      Удалить
  4. Да-уж ! Век живи - век учись .Аминь .

    ОтветитьУдалить
  5. В Минте получается, спасибо за труд.

    ОтветитьУдалить
  6. Странно что "напоминают" о таком событии из Испании.. Понятно что Вы из Казахстана, впрочем как и я. И мы знаем о таких событиях, а в России нет. Удивительно.

    ОтветитьУдалить
  7. Ответы
    1. Что именно? Что Вы открыли для себя?

      Удалить
    2. Про команду ncal я знал, а вот сколько у нее аргументов и что она может вывести еще, было бы интересно узнать.

      Удалить
    3. alv. Он ВСЁ знает.Любые вопросы и ответы.. А о ZFS есть у Вас вопросы?

      Удалить
    4. О ZFS нету Александр, с ней не сталкивался.

      Удалить
    5. ==Про команду ncal я знал, а вот сколько у нее аргументов и что она может вывести еще, было бы интересно узнать.==
      Введите и выполните команду команду cal -w, которая выведет дополнительные аргументы к календарям. Подставляйте определённые аргументы к ncal и узнаете, что она может вывести еще с каждым из них.

      Удалить
  8. Насколько этот "график" работает можно узнать просто придя в церковь.

    ОтветитьУдалить
    Ответы
    1. Это понятно, я не хожу в церковь. Просто всегда удивляют новые познания о Linux.

      Удалить
    2. Зря..Иногда можно..Просто так.

      Удалить
    3. Причин ходить куда-либо не вижу.Конечно есть и другие слова.Русский Язык велик и могуч. Пользоваться им надо в меру.

      Удалить
  9. Новая ICQ для Linux
    https://icq.com/linux/ru
    статья по установке не помешала бы.

    ОтветитьУдалить
    Ответы
    1. ==Новая ICQ для Linux
      https://icq.com/linux/ru
      статья по установке не помешала бы.==
      Это готовый бинарник. Его не надо устанавливать. Пару кликов мыши на нём, аська запускается и... работает как обычная ася в виндовсе. Вот и всё.

      Удалить
  10. Могу сказать что католическая Пасха по дате празднования более близка к той дате когда собственно Бог согласно Библейскому повествованию обязал её праздновать, к тому же на много, хотя ни католическая Пасха не отмечается тогда когда нужно, ни православная, потому как Пасха должна праздноваться в день первого полнолуния после весеннего равноденствия, тоесть было это в этом году 23 марта, такая ощутимая разница связана с Григорианским и Юлианским календарём раз и с причиной согласно которой Бог ввёл этот праздник два, в первом случае Католическая церковь живёт по более точному календарю, потому отмечает Пасху в более точный период времени, а во втором случае всё-равно не точно потому что официальное христианство исказило причину празднования, иначе говоря вопреки распостранённому мнению празднование Пасхи никак не связано с воскресением Иисуса Христа, потому как Божье постановление о праздновании было дано израильскому народу на много раньше в связи с исходом из египетского рабства, иными словами Пасха это если говорить по современному праздник независимости израильского народа и согласно Библейскому повествованию Иисус на Пасху не воскрес, а наоборот его на Пасху убили, связано это было с необходимостью жертвы, до жертвы Иисуса празднование Пасхи сопровождалось жертвоприношением животных, теперь в этом надобность отпала, тем не менее современное празднование Пасхи сопровождается обычаями которые совершенно не соответствуют Божьему постановлению и даже ему противоречат, потому как сопровождается поеданием сдобных куличей и крашеных яиц, в первом случае прямое нарушение Божьего постановления о употреблении исключительно пресного хлеба в день Пасхи, а не сдобного, во втором так и более того - крашеные яйца являются елементом древнего языческого культа. Вот как-то так......

    ОтветитьУдалить
    Ответы
    1. и как это относится к ubuntu, батюшка?

      Удалить
    2. Пасха это не бренд ветхого завета. Пасха означает прохождение испытания, воскрешение, ...

      Удалить
    3. Вы путаете понятия новозаветной и ветхозаветной Пасхи. У иудеев это действительно воспоминание исхода из египетского рабства. Но после воскресения Иисуса Христа праздник для христиан переместился на более важное событие - наш "исход" из страны вечной гибели и греха. Поэтому праздник и называется. Пасха, Светлое Христово Воскресение

      Удалить
  11. вот тут можно весьма оперативно узнать не наступило ли ещё Рождество
    https://isitchristmas.com

    ОтветитьУдалить
  12. да зачем морочится, ставте вот эту сборку>>Ubuntu Christian Edition>>http://www.ubuntuce.com

    ОтветитьУдалить