On my linux system, I can do "man git log" (note the space), and this will show me the manpage for git-log(1) (with a dash), as expected.
On my MacOSX machine, "man git log" only shows the manual page for git(1).
How does the linux man know that the two arguments "git" and "log" should be combined to find the "git-log" manpage? How would I get the same result in OSX?
This is a feature of the particular implementation of man
used on many Linux systems. Referring to the documentation (for man
), it is mentioned in the description of the --no-subpages
option:
--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.
Other implementations of man
can do different things. For instance (not well documented, but there if you study it), a quick check for man git status
on OSX El Capitan shows it tries to find a manual page for status. However, man git-status
gives a manual page.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With