はじめに
Linuxのコマンドラインで、現在の月や年のカレンダーを手軽に確認したいとき、グラフィカルなアプリケーションを起動する必要はありません。cal(カレンダー)コマンドを使えば、瞬時にターミナル上に美しいテキストベースのカレンダーが表示されます。
calコマンドは非常にシンプルですが、特定の日付や年号を調べたり、シェルスクリプトで日時処理を行う際の参照として役立ちます。この記事では、calコマンドの基本的な使い方から、コマンド名の由来、便利なオプション、そしてLPIC対策として押さえるべきポイントまでを詳しく解説していきます。
calコマンドの基本
まずは、calコマンドの基本的な使い方と、よく使うオプションから見ていきましょう。
calコマンドの書式
cal [オプション] [[月] 年]
- ポイント: オプションや引数を付けずに
calと入力すると、現在の月のカレンダーがハイライトされて表示されます。
主要オプション一覧
| オプション | 意味 | 補足 |
-3 | 前月・今月・来月の3ヶ月分を表示する | three-months |
-y | 指定した年(または現在の年)の1年分を表示する | year |
-j | ユリウス日(年の初めからの通算日)を含めて表示する | julian |
コマンド名の由来:なぜ「cal」なのか?
calコマンドの「cal」は、英語の “calendar”(カレンダー) の短縮形です。
このコマンドの目的は、ユーザーが指定した月や年のカレンダーをターミナルに表示することです。その機能を直接的かつ簡潔に表現したのが、このcalという名前です。Unix/Linuxシステムにおける、シンプルで覚えやすいコマンド命名の典型例と言えます。
各オプションの詳細と実践例
ここからは、calコマンドの各オプションを使ったカレンダーの表示方法について詳しく掘り下げていきます。
1. 特定の月・年のカレンダー表示
calコマンドの引数に「月」と「年」を指定することで、過去や未来の任意の日付のカレンダーを表示できます。
実践例:
2026年3月のカレンダーを表示:
cal 3 2026

現在の月(引数なし)のカレンダーを表示:
cal

2. -3 (three-months) オプション:3ヶ月分表示
意味: 現在の月を中心に、前月・今月・来月の連続した3ヶ月分のカレンダーを一度に表示します。
実践例:
cal -3

オプションの由来:「-3オプションの3は、three-months(3ヶ月)の略です。連続する3ヶ月を比較して見たいという一般的なニーズに応えるために導入されました。」
3. -y (year) オプション:1年分表示
意味: 引数に年を指定した場合、その年の1年分(1月から12月)のカレンダーをまとめて表示します。引数を省略した場合は、現在の年のカレンダーを表示します。
実践例:
cal -y 2025

オプションの由来:「-yオプションのyは、year(年)の頭文字から来ています。年単位でカレンダー全体を確認したいというニーズに応えるために導入されました。」
4. -j (julian) オプション:ユリウス日表示
意味: 通常の日付(1〜31)ではなく、年の初め(1月1日)からの通算日(1〜365または366)であるユリウス日(通称)で日付を表示します。
実践例:
cal -j

オプションの由来:「-jオプションのjは、julian(ユリウス日)の頭文字から来ています。特に古いUnixシステムや特定の用途で、通算日が必要な場合に利用されます。」
LPIC対策としてのポイント
calコマンド自体はシンプルですが、LPIC試験では、カレンダーの表示形式を変更するオプションの知識が問われます。
- 引数の順序:
calに月と年を指定する場合、必ずcal 月 年の順序であること(例:cal 10 2026)を覚えておく。 - 年単位の表示:
-yオプションは、シェルスクリプトなどで特定の一年間の日付を処理する際の参照として利用できる。 - 組み込み機能: 多くのシステムで
calは外部コマンドですが、そのシンプルさゆえに、日付関連の機能として頻繁に利用されます。
まとめ
今回は、コマンドラインでカレンダーを表示するcalコマンドについて、その基本的な使い方からコマンド名の由来、そして主要オプションまでを詳しく解説しました。calコマンドは、dateコマンドと並び、Linuxシステムにおける日時情報を扱うための基本的なツールです。



コメント