Команда Linux cal
Что такое команда cal
calЭто простая, но практичная утилита командной строки в системах Linux, используемая для отображения календарей в терминале. Её название происходит от сокращения слова "calendar".
Основные функции
- Отображение календаря текущего месяца
- Отображение календаря указанного месяца
- Показать календарь на весь год
- Поддержка нескольких форматов отображения и опций
Базовый синтаксис
cal [选项] [[月份] 年份]
Описание параметра
- Без параметров: отображает календарь текущего месяца
- Указание только года: отображает календари всех месяцев этого года
- Указание и месяца, и года: отображает календарь этого месяца
Подробное объяснение общих опций
1. Отобразить календарь текущего месяца (по умолчанию)
Пример
Пример вывода:
十月 2023 日 一 二 三 四 五 六 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
2. Отобразить календарь указанного месяца
Пример
Отобразить календарь на декабрь 2023 года
3. Отобразить календарь на весь год
Пример
Отобразить календари всех месяцев 2023
4. Отобразить календарь предыдущего/следующего месяца
Пример
Отобразить текущий месяц и месяцы до и после него (всего три месяца)
5. Отобразить юлианский календарь (1-366)
Пример
Отобразить календарь в юлианском формате даты, считая с дня 1 по день 365/366 каждого года
6. Отобразить понедельник как первый день недели
Пример
По умолчанию воскресенье — первый день недели; используйте-mопцию, чтобы изменить на понедельник
Продвинутое использование
1. Объединить опции
Пример
Отобразить юлианский календарь декабря 2023, с понедельником в качестве первого дня недели
2. Отобразить календарь для конкретного года
Пример
Отобразить календарь 1752 года (год исторического перехода с юлианского календаря на григорианский)
3. Отобразить исторический календарь
Пример
Отобразить календарь на сентябрь 1752 года (обратите внимание, что в этом месяце отсутствуют 11 дней)
Практические примеры применения
Пример 1: Быстро просмотреть следующий месяц
Пример
Пример 2: Просмотр текущего квартала
Пример
cal -3 $(( (month-1)/3*3+1 )) $(date +%Y)
Пример 3: Создать файл календаря
Пример
Сохранить календарь на 2023 год в файл
ЧАВО
Вопрос 1: команда cal отображает неточно?
Ответ: убедитесь, что введённый год находится в диапазоне 1-9999, а месяц — в диапазоне 1-12
Вопрос 2: Как отобразить календарь на других языках?
Ответ: Можно установить переменную окружения LANG, например:
Пример
Вопрос 3: В чем разница между cal и ncal?
Ответ: ncal — это вариант cal, предоставляющий различные варианты компоновки. Вы можетеman ncalпросмотреть подробности
Сводная таблица
| Опция | Описание | Пример |
|---|---|---|
| Отсутствует | Показать календарь текущего месяца | cal |
| -j | Формат юлианского календаря | cal -j |
| -m | Понедельник как первый день недели | cal -m |
| -3 | Показать предыдущие/текущие/следующие три месяца | cal -3 |
| -y | Показать все месяцы текущего года | cal -y |
| Месяц Год | Показать календарь указанного месяца | cal 12 2023 |
| Год | Показать календарь указанного года | cal 2023 |
Энциклопедия команд Linux