Is there a common location of all of the man files, so I can view them in a different editor instead of the cli?
Or is there a $ man dump
command that I can use to export each individual man file for what’s installed
Thanks, Forever noob
You can list every man page installed on your system with
man -k .
, or justapropos .
But that’s a lot of random junk. If you only want “executable programs or shell commands”, only grab man pages in section 1 with aapropos -s 1 .
You can get the path of a man page by using
whereis -m pwd
(replacepwd
with your page name.)You can convert a man page to html with
man2html
(may requireapt get man2html
or whatever equivalent applies to your distro.)
That tool adds a couple of useless lines at the beginning of each file, so we’ll want to pipe its output into a| tail +3
to get rid of them.Combine all of these together in a questionable incantation, and you might end up with something like this:
mkdir -p tmp ; cd tmp apropos -s 1 . | cut -d' ' -f1 | while read page; do whereis -m "$page" ; done | while read id path rest; do man2html "$path" | tail +3 > "${id::-1}.html"; done
List every command in section 1, extract the id only. For each one, get a file path. For each id and file path (ignore the rest), convert to html and save it as a file named
$id.html
.It might take a little while to run, but then you could run
firefox .
or whatever and browse the resulting mess.Or keep tweaking all of this until it’s just right for you.
Thank you for the insight! This is super helpful
the command
manpath
will show the paths it searches. usually it’s /usr/share/man and /usr/man is a common location for them.And the man path can be configured using the
$MANPATH
environment variable, just like$PATH
.Oh, and if you leave a colon
:
at the end of$MANPATH
, then it’s like appending the default search path (which is binary specific I suppose).
Sometimes I find myself looking man pages up on linux.die.net/man and mankier.com. Distros like Debian have manpages.debian.org (all manpages in Debian) which are useful as a web-based reference too
Nice, thanks for the tip!