man の上手な使い方

Ippei Kishida

Last-modified:2016/04/26 23:37:47.

『UNIX今日の技』の man に関する項目を纏めたものです。

1 概説

UNIX の特長の一つは豊富なオンラインドキュメントが標準で付いてくる所です。 man は最も標準的なマニュアルであり、多くの情報を得ることができます。

普段よく使うのはコマンドについてでしょう。 「man ls」とやれば ls コマンドについての多くの情報を引出すことができます。 「ディレクトリを再帰的に掘って表示するオプションは何か?」とかいう瑣末な情報をユーザ自身が覚えている必要はありません。 必要な時に man ページを見ればそれで良い話です。

コマンド以外にも様々な事柄について書かれており、以下のセクションに分かれています。

複数のセクションに同名で存在するマニュアルは、デフォルトではセクション番号が若い方を表示します。 歳老いた方(?)を指定するにはセクション番号を明示してやる必要があります。 例えば printf は「ユーザーコマンド(1)」と「ライブラリ関数(3)」の2つのセクションに存在します。 ライブラリ関数 printf の使い方を調べたい場合は「man 3 printf」としてやる必要があります。

各セクションにどんなエントリがあるかはシステムから提供される環境変数 MANPATH を掘れば分かると思います。

2 各セクションのイントロダクション

「man 1 intro」と打てば、「ユーザコマンド(1)」セクションのイントロダクションを表示します。

3 Cプログラムのライブラリ関数

「man 3 printf」とか。 どのファイルをインクルードしなければならないか、とか書式とか戻り値とか。

4 システムファイルの書式

例えば、「man rc.conf」で /etc/rc.conf の書式や項目について調べることができます。 システムファイルの書式についてはセクション(5)に書かれているので、明示的に指定するならば「man 5 rc.conf」になります。 他にもたくさんあります。 * fstab * crontab * hosts 「smb.conf」のようなアプリケーション寄りの物についても man ページがシステムにインストールされていることがあります。

5 ASCII文字コード表

「man ascii」で ASCII文字コードを調べることができます。 「その他(7)」セクションに分類されています。

6 日本語マニュアル

英語のマニュアルを真っ向から読むのは私のような英語弱者には辛いものがあります。 FreeBSD では「日本語マニュアルプロジェクト」というプロジェクトが立ち上がっていて、多くのマニュアルページが日本語訳されて提供されています。 私は他の UNIX の事はよく知らないのですが、同様のシステムが Linux や MacOS X にもあるのではないかと思います。 man ページを引く労力をかなり軽減することができるので、パッケージシステムなどでインストールできるなら入れておくことをオススメします。

7 man: ディレクトリ構造

『UNIX今日の技/UNIXというシステム/UNIXのシステムディレクトリ(の岸田による解釈)』で UNIX のファイルシステムに関する==私見を披露==概略を説明しましたが、使っている UNIX についてのより厳密な説明を「man hier」によって得ることができます。 「A sketch of the file system hierarchy.」とのことです。