なぜそれがうまくいかないのだろうかecho $MANPATH
(私のシステム(Debian Jessie x86_64 GNU / Linux 3.16.0-4-amd64))このmanpath
コマンドはそれ自体でうまく機能します。
user@host:~$ manpath
/usr/local/man:/usr/local/share/man:/usr/share/man
/etc/manpath.config - リストされているようにコメントされていない行が存在し、含まれていますmanpath
。
マンパスのマニュアルページは次のように言います:
$ MANPATHが設定されている場合、manpathは単に内容を表示します。
では、なぜmanpath
動作しますが、echo $MANPATH
動作しませんか?
答え1
私のものからman manpath
(Ubuntu 16.10 - システムの詳細を言及していないので):
$ MANPATHが設定されている場合、manpathは動的に決定するのではなくその値を表示します。
だから$MANPATH
もっと正しいです/etc/manpath.config
。
また注:
説明する
$ MANPATHが設定されている場合、manpathはその内容のみを表示し、警告を表示します。そうでない場合、 manpath は適切なマニュアルページ階層検索パスを決定し、結果を表示します。
答え2
変数の存在に関するので、カスタム$MANPATH
マンパスが必要な場合はオーバーライドされます。
Debian Lenny のマニュアルページを引用すると:
説明する
設定すると、
$MANPATH
manpathは単に内容を表示し、警告を発行します。そうでない場合、 manpath は適切なマニュアルページ階層検索パスを決定し、結果を表示します。コロンで区切られたパスは、
/etc/manpath.config
man-db 構成ファイル ( ) およびユーザー環境で得られた情報を使用して決定されます。
マニュアルページに「設定されている$MANPATH
場合」と表示されている場合、これは「この変数がユーザーまたはスクリプトによって設定されている場合...」または「この変数が空の場合」manpath.config
のデフォルト値が使用されることを意味します。
しばらく時間をかけて/etc/manpath.config
ファイルをナビゲートして、すべてのマンページパスの構造を理解します。
関連情報:
$MANPATH
これを行う方法、またはカスタムマニュアルページパスを作成する方法へのいくつかのリンク。
- MANPATHを復元する簡単な方法
- 私の電動工具のマニュアルページ項目をどのように追加しますか?
- Debian List - Re: "manpath" コマンドはどのように機能しますか?
- FreeBSD マンパス(1) マンページ- このマンページは設定の意味をより明確に表現するので学習目的に興味深いです
$MANPATH
。