You can list every man page installed on your system with man -k .
, or just apropos .
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 a apropos -s 1 .
You can get the path of a man page by using whereis -m pwd
(replace pwd
with your page name.)
You can convert a man page to html with man2html
(may require apt 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.