Algumas implementações de man
, incluindo a usada pelo Ubuntu, substituem espaços em seus termos de pesquisa por hifens e tentam localizar uma página de manual com esse nome. Portanto, man git init
procura a mesma coisa que man git-init
. Da mesma forma, man run parts
e man ntfs 3g
work (se você tiver run-parts
e ntfs-3g
em seu sistema).
Ele só faz isso com pares de palavras, portanto, man git annex sync
não funciona (embora man git-annex sync
faça, já que isso é novamente um par de palavras).
Na verdade, quando você solicita duas páginas de manual (por exemplo, man git bash
para ver as páginas de manual git e bash), man
tenta primeiro procurar uma% man_de% manpage. Você pode ver isso na saída de depuração se você ativá-lo com git-bash
.
Este recurso de homem é chamado de "subpáginas", você pode ler o código-fonte implementando subpáginas no man-db (obrigado, Stephen Kitt ). A pesquisa na -d
manpage para "subpáginas" também o levará à descrição de esse comportamento na opção man(1)
:
--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