web-dev-qa-db-ja.com

gitの手動入力はありません

MANPATHが次のように設定されている場合、man gitを使用できます。

$ echo $MANPATH
/usr/local/opt/findutils/libexec/gnuman:/usr/local/opt/coreutils/libexec/gnuman:

ただし、末尾のコロンが含まれていない場合、男性はエントリが見つからないと言います。

$ echo $MANPATH
/usr/local/opt/findutils/libexec/gnuman:/usr/local/opt/coreutils/libexec/gnuman

$ man git
No manual entry for git

マンページは/Library/Developer/CommandLineTools/usr/share/man/man1/git.1にあり、ホームディレクトリからコマンドを実行しています。末尾のコロンがmanに現在のディレクトリとMANPATHを検索するように指示していることを理解していますが、なぜmanが/Libraryの下のエントリを検索するのですか?

1
Big McLargeHuge

Macでは手動でMANPATHを設定する必要はありません。

ほとんどのUnixベースのシステムとは異なり、OSXはPATHの内容に基づいてmanページの適切な検索パスを自動的に選択します。このルールは、manpath(1)の「マニュアルページの検索パス」のセクションで説明されています。

このための構成ファイルは過去に他の場所にありましたが、現在は_/private/etc/man.conf_にあります。このファイルはmanpath(1)によって読み取られ、適切な検索パスが生成されます。ただし、シェルでMANPATHが手動で設定されている場合、この動作は無効になります。

末尾の_:_への対処

マンページでこれの確認を見つけることができませんが、MANPATHが両端に_:_がある環境で設定されている場合、環境のMANPATHが出力に追加されるようです。 manpathの。

例:

_$ MANPATH='.:' manpath
/Users/me/.:/usr/share/man:/usr/local/share/man

$ MANPATH='':.' manpath
/usr/share/man:/usr/local/share/man:/Users/me/.
_
1
Fox