Copy all the text of an entire `man` page from Terminal.app

Solution 1:

You can push plain text to the clipboard by piping to pbcopy, to paste anywhere as usual.

man ssh | col -b | pbcopy

or equivalent

man -P "col -b | pbcopy" ssh

the latter of which is nicer if you want to use it as an alias, like mancp ssh, given:

alias mancp='man -P "col -b | pbcopy"'

There are methods to go to HTML/PDF: Can man pages be converted to html and/or pdf format?


If it's just the nicer reading experience you're after, you can right-click on a selection of a command and open its man page as a separate window/tab, with normal scrolling and ⌘F find.

Nicer reading

You can customise what this looks like in Terminal Preferences → Profiles, under the Man Page profile which is one of the default profiles to exist.
This includes font family and size (also see View menu) and background/foreground colours.

Man Page profile preferences

Solution 2:

If you want to read the man page in Preview, nicely formatted as a PDF, you can run

man -t ssh | open -f -a Preview

Or

man ssh | col -b | open -f -e

to open the text version in TextEdit.

Solution 3:

Pipe the standard output of running man command to builtin col utility. Run the following command line:

man ssh | col -b > ssh.txt