はじめに
Linuxで作業をしていると、初めて使うコマンドや、オプションの意味がわからないコマンドに遭遇することがよくあります。そんな時、インターネットで検索するのも一つの手ですが、実はLinuxシステム自体に、全てのコマンドの詳細な説明が用意されています。それが、man(マニュアル)コマンドです。
LPICレベル1の試験でも、manコマンドを使った情報検索能力は必須とされています。この記事では、manコマンドの基本的な使い方から、効率的なマニュアルの読み方、そしてLPIC対策として押さえるべきポイントまでを詳しく解説していきます。
manコマンドの基本
まずは、manコマンドの基本的な使い方と、よく使うオプションから見ていきましょう。
manコマンドの書式
man [オプション] [セクション番号] コマンド名
ポイント: コマンド名を指定するだけで、そのコマンドのマニュアルページが表示されます。セクション番号を指定すると、同じ名前の異なるマニュアルページ(例: コマンドとシステムコール)を区別して表示できます。
コマンドの由来: manコマンドは、manualが由来です。
主要オプション一覧
| オプション | 意味 | 補足 |
| -k | キーワードでマニュアルページを検索(aproposと同じ) | keyword |
| -f | コマンドの短い説明を表示(whatisと同じ) | whatis |
| -w | マニュアルファイルのパスを表示 | where |
| -a | 全てのマッチするセクションを表示 | all |
各オプションの詳細と実践例
ここからは、manコマンドの各オプションやマニュアルページの構成について、もう少し詳しく掘り下げていきます。単に機能を知るだけでなく、そのオプションがなぜそのように名付けられたのか、どのような歴史的背景があるのかを知ることで、より深くコマンドを理解できるはずです。
マニュアルページの構造とセクション
manコマンドで表示されるマニュアルページは、通常、以下のセクションで構成されています。LPIC試験では、これらのセクションの内容を理解しているかが問われることがあります。
- NAME: コマンド名と短い説明
- SYNOPSIS: コマンドの書式(使い方)
- DESCRIPTION: コマンドの詳細な説明
- OPTIONS: 各オプションの説明
- EXAMPLES: 使用例
- EXIT STATUS: 終了ステータス
- FILES: 関連ファイル
- SEE ALSO: 関連する他のマニュアルページ
- BUGS: バグ情報
- AUTHOR: 作者情報
特に重要なのは、NAME、SYNOPSIS、DESCRIPTION、OPTIONS、EXAMPLESです。
また、マニュアルページには、それぞれ「セクション番号」が割り当てられています。
- 実行可能プログラムまたはシェルコマンド: (例:
ls,grep) - システムコール: (例:
open,read) - ライブラリ関数: (例:
printf,malloc) - 特殊ファイル: (例:
/dev/zero,/dev/null) - ファイル形式と規約: (例:
passwd,fstab) - ゲーム: (現在はあまり使われない)
- その他: (例:
manのマニュアル、groffなど) - システム管理コマンド: (例:
mount,fdisk) - カーネルルーチン: (Linux特有)
実践例:
readコマンドのマニュアルを表示(マニュアルは長いので、画像は途中までです)
man read

readはコマンドだけではなく、システムコールも存在します。
システムコールのreadのマニュアルを読みたい場合は、明確にセクション番号の2を指定します。
man 2 read

manページでの操作方法
manコマンドの出力は通常、lessコマンドで表示されます。そのため、lessのキーバインドが使えます。
Spaceキー: 1画面分スクロールダウンbキー: 1画面分スクロールアップEnterキー: 1行スクロールダウン/キー: 文字列検索(nで次を、Nで前を検索)qキー:manページを終了
-k (keyword) オプション:キーワードでマニュアルページを検索
意味: 指定したキーワードを含むマニュアルページを検索します。これは**apropos**コマンドと同じ機能です。
実践例: ファイルシステムに関連するマニュアルページを検索します。
man -k filesystem
# または apropos filesystem

オプションの由来: -kオプションのkは、keyword(キーワード)の頭文字から来ています。どのコマンドを使えば良いか分からないが、特定の機能に関連するコマンドを探したい場合に、キーワードで検索できるようにと追加された機能です。
-f (whatis) オプション:コマンドの短い説明を表示
意味: 指定したコマンドの簡潔な説明を表示します。これは**whatis**コマンドと同じ機能です。
実践例: lsコマンドの短い説明を表示します。
man -f ls
# または whatis ls

オプションの由来: -fオプションのfは、whatis(これは何?)の質問に対する答え、つまりコマンドが「何であるか」を端的に示す機能(function)を表しています。特定のコマンドが何の役に立つのかを素早く知りたい場合に便利です。
-w (where) オプション:マニュアルファイルのパスを表示
意味: 指定したコマンドのマニュアルファイルが、システム上のどこに保存されているかのパスを表示します。
実践例: lsコマンドのマニュアルファイルのパスを表示します。
man -w ls

オプションの由来: -wオプションのwは、where(どこに?)の頭文字から来ています。マニュアルファイルが実際にどこにあるのかを知りたい、あるいは直接ファイルを参照したい場合に役立ちます。
-a (all) オプション:すべてのマニュアルセクションを表示
意味: allオプションは、指定したコマンド名に一致する全てのマニュアルセクションを順番に表示します。
実践例: readコマンドのマニュアルを表示します。マニュアル表示画面でq(quit)すると、画像の様に次のセクションを閲覧するかどうか確認されます。
man -a read

まとめ
今回は、Linuxのコマンドリファレンスとして非常に重要なmanコマンドについて、その基本的な使い方から主要オプション、そしてマニュアルページの読み方までを深く掘り下げて解説しました。manコマンドを使いこなすことは、自己解決能力を高め、LPICレベル1の合格にも直結します。
困った時にmanコマンドを活用する習慣をつけ、ぜひ日々のLinux作業でコマンドへの理解を深めてください。



コメント