Деякі реалізації 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це так, як це знову слово пари).
Насправді, коли ви запитуєте дві сторінки вручну (наприклад, man git bashщоб побачити як git, так і bash manpages), manнасправді спочатку намагається шукати git-bashmanpage. Ви можете бачити це у виводі налагодження, якщо ввімкнути його -d.
Ця людина називається "підсторінки", ви можете прочитати вихідний код, що реалізує підсторінки в man-db (спасибі, Стівен Кітт ). Пошук в 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
git init