Гид по технологиям

cal — отображение календаря в терминале Linux

4 min read Linux Обновлено 04 Jan 2026
Cal: календарь в терминале Linux
Cal: календарь в терминале Linux

Календарь с линейкой и ручкой на фоне рабочего стола

cal — стандартная команда в Linux, которая печатает ASCII‑календарь для указанного месяца и года. Она очень компактна и удобна для быстрого просмотра дат прямо в терминале.

Что такое cal и ncal

cal — простая командная утилита для показа календарей в текстовом виде. ncal — альтернативная реализация (в Ubuntu часто поставляется вместе) с другими опциями и форматом вывода.

Определение в одну строку:

  • cal — выводит календарь в привычном виде (недели по воскресеньям по умолчанию в некоторых реализациях).
  • ncal — выводит компактный вертикальный или альтернативный формат и позволяет задавать первый день недели.

Важно: реализация cal может отличаться между дистрибутивами (FreeBSD‑версия в Ubuntu отличается от util-linux в других системах). Чтобы увидеть точную справку для вашей системы, используйте:

man cal

Базовое использование

Чтобы увидеть календарь текущего месяца, выполните:

cal

Вывод команды cal в терминале, где текущая дата подсвечена

В приведённом примере текущий день выделен. Команда не требует прав суперпользователя и быстро отвечает.

Полезные флаги и примеры

Показывать последние три месяца подряд:

cal -3

Календарь на три месяца подряд, вывод cal -3

Вывести календарь на весь год:

cal -y

Календарь на год, вывод cal -y

Календарь для конкретного года:

cal -y 2020

Календарь для 2020 года

Календарь для заданного месяца и года (замените month и year цифрами):

cal month year

Например, чтобы увидеть март 1973:

cal 3 1973

Календарь марта 1973 года

ncal предоставляет дополнительные флаги. В Ubuntu ncal поддерживает опции для первого дня недели:

  • -S — неделя начинается с воскресенья
  • -M — неделя начинается с понедельника
ncal -S
ncal -M

Пример ncal с опциями смены первого дня недели

Совет: если вы используете cal в скриптах, вывод парсится легче, когда вы ограничиваете количество строк или используете постоянный формат. Для автоматизации предпочитайте ncal, если нужен более предсказуемый вертикальный формат.

Особый случай: сентябрь 1752

Если вы выполните:

cal 9 1752

вы увидите странный календарь: дни переходят с 2‑го на 14‑е. Это не ошибка. В сентябре 1752 года Великобритания и её колонии перешли с юлианского календаря на григорианский и пропустили 11 дней. Исторический факт иногда виден в реализации cal по историческим причинам.

Вывод cal для сентября 1752 года, где отсутствуют дни с 3 по 13

Факт: переходы календарей происходили в разные годы в разных странах; на практике это бывает заметно только при работе с историческими датами.

Когда cal не подходит

  • Если вам нужен графический календарь с синхронизацией и напоминаниями, cal не подойдёт.
  • Для локализации с нестандартным форматом дат или нестандартной первой неделей лучше использовать утилиты с поддержкой локали или локальные GUI‑клиенты.
  • cal отображает исторические календари, но не интерпретирует временные зоны или переходы летнего времени.

Альтернативы:

  • GNOME Calendar, KOrganizer, Thunderbird/Lightning — графические и синхронизируемые приложения.
  • calcurse — текстовый календарь/органайзер с возможностью задач и напоминаний.

Ментальные модели и хитрости

  • cal — «освоил и забыл»: запомните 2–3 флага (plain, -y, -3) и этого хватит для повседневных задач.
  • ncal — используйте, если вам нужен вертикальный вывод или контроль первого дня недели.
  • man cal — ваша «входная» справка: всегда проверяйте мануал для своей системы.

Шпаргалка: команды и примеры

  • Текущий месяц:
cal
  • Последние три месяца:
cal -3
  • Весь год:
cal -y
  • Конкретный месяц и год:
cal 12 2024
  • Использование ncal с первой неделей в понедельник:
ncal -M

Ролевые чек‑листы

Для системного администратора:

  • Проверить реализацию cal (man cal).
  • В скриптах использовать ncal при необходимости стабильно парсить даты.
  • Документировать поведение для старых/исторических дат, если критично.

Для разработчика автоматизации:

  • Использовать стабильный вывод (ncal) для парсинга.
  • Тестировать сценарии на пограничных датах (конец года, високосные года).

Мини‑методология для автоматизации с cal

  1. Выбор формата: cal для визуального, ncal для парсинга.
  2. Проверка реализации: man cal.
  3. Тестирование: прогон команд на целевых системах.
  4. Логирование: сохранять вывод при ошибках для отладки.

Ключевые числа и факты

  • Пропущено 11 дней при переходе Британии на григорианский календарь (сентябрь 1752).
  • cal — встроенная, лёгкая команда, не требует установки в большинстве дистрибутивов.

Примечание

Важно: поведение cal может отличаться между дистрибутивами. Перед внедрением в продуктивные скрипты проверьте man‑страницу и тестируйте вывод на целевой системе.

Краткое резюме

cal — удобный инструмент для быстрого просмотра календарей в терминале. Для большинства задач достаточно команд cal, cal -3 и cal -y. Если нужна стабильность формата и контроль первого дня недели, используйте ncal. Для графических нужд выбирайте полноценные календарные приложения.

Ключевые выводы:

  • cal быстро показывает месяц и год в ASCII.
  • ncal даёт дополнительные опции и удобен для парсинга.
  • Исторические особенности (как сентябрь 1752) отражают реальные изменения календарей.

Важно: читайте man cal на своей системе, чтобы избежать сюрпризов в поведении.

Критерии приёмки

  • Команда cal выводит ожидаемый месяц в терминале.
  • Для скриптов формат вывода согласован с использованием ncal.
  • Документация команды доступна через man cal.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство