回答:
man
Ubuntuで使用されているものを含むの一部の実装では、検索語のスペースをハイフンに置き換え、その名前のマニュアルページを見つけようとします。だから、man git init
同じものを探しますman git-init
。同様に、man run parts
そしてman ntfs 3g
仕事(あなたが持っている場合run-parts
やntfs-3g
、システム上)。
ただし、これman git annex sync
は単語のペアでのみ行われるため、機能しません(ただしman git-annex sync
、やはり単語のペアなので)。
実際、2つのマニュアルページ(たとえば、man git bash
gitとbashの両方のマンページman
を表示する)を要求すると、実際には最初にマンページを検索しようとしますgit-bash
。で有効にすると、デバッグ出力でこれを確認できます-d
。
このman機能は「サブページ」と呼ばれ、man-dbにサブページを実装するソースコードを読むことができます(ありがとう、Stephen Kitt)。「サブページ」のman(1)
マンページを検索すると、--no-subpages
オプションの下にこの動作の説明が表示されます。
--no-subpages
By default, man will try to interpret pairs of manual page
names given on the command line as equivalent to a single
manual page name containing a hyphen or an underscore. This
supports the common pattern of programs that implement a
number of subcommands, allowing them to provide manual pages
for each that can be accessed using similar syntax as would be
used to invoke the subcommands themselves. For example:
$ man -aw git diff
/usr/share/man/man1/git-diff.1.gz
To disable this behaviour, use the --no-subpages option.
$ man -aw --no-subpages git diff
/usr/share/man/man1/git.1.gz
/usr/share/man/man3/Git.3pm.gz
/usr/share/man/man1/diff.1.gz
man
。それは決して普遍的でも特別な共通でもありません。
git init