how to print a man page

Malcolm Kay malcolm.kay at internode.on.net
Fri Nov 28 21:19:38 PST 2003


On Sat, 29 Nov 2003 00:10, Bill Schoolcraft wrote:
> At Fri, 28 Nov 2003 it looks like Antoine Jacoutot composed:
> > On Friday 28 November 2003 20:10, Ian Todd wrote:
> > > I have installed a local printer on /dev/lp0. I want to
> > > print a man page how do i do that? Will it also fit onto
> > > the page? i dont need to setup the size of my page?Thanks.
> >
> > $ groff -Tps -man /path/to/man/page/man.1 | lpr -P PS-Printer
>
> Cool, never saw that method, I've used the following but of
> course I end up with an extra file here unless I throw in an rm
> command at the end for the file in question.
>
> man yourchoice | col -b > manpage.txt ; lpr yourchoice.txt
>
> Or the following script works, you could call it "manp.sh"
>
> --------------------snip--------------------
> #!/bin/sh
> #
> echo
> echo "Formatting and printing the manpage called $1 "
> echo
> man $1 | col -b > $1.txt ; lpr $1.txt ; rm -f $1.txt
>
> echo "Your manpage has been sent to the printer "
> echo
>
> --------------------snip--------------------

This restricts the quality of the output formatting to that
achievable on a console. OK if you have only a primative printer
but a far cry from the result achieved using Antoine's method;
or more conveniently:

$ man -t manpage | lpr -P PS-printer

In your method the intermediate explicit file is not needed, just
pipe the output direct to the printer:

$ man manpage | col -b | lpr 

Malcolm Kay


More information about the freebsd-questions mailing list