我想让 man 页面变得清晰。但是,我还没有找到办法。
关于我想要实现的目标的伪代码
man man | lpr
你怎么能打印手册,这样您首先就能看到要打印多少页?
答案1
man -Tps man | lpr
这告诉 man 将输出格式化为可直接通过管道发送到打印机的 postscript 文件。请参阅 man 页面以了解更多 -T (troff) 格式化选项。
要预览输出,请将其传输到文件并使用 gv 或 okular 查看。
man -Tps man > manual.ps
gv manual.ps
答案2
man ls | col -b | lpr -P my_printer
这将打印“ls”的手册页,使用“col”对其进行格式化,然后在名为“my_printer”的打印机上打印
格式化不是必需的,但可以删除特殊字符使其更易于阅读。
答案3
较新版本的 man(至少我的 openSuSE 11 上的版本是这样的 :) )会自动检测输出是终端还是管道。如果您希望将未格式化的手册页输出到标准输出,请尝试:
man man | cat
对于要打印的手册页,我喜欢:
man man | a2ps --stdin='man(1)'
答案4
回答上面页数问题(需要 50 个回复才能添加评论):
man ls | wc -l | awk '{ print $1/60 }'
每页的默认行数为 60,因此如果您不更改该值,则只需除以 60 并向上舍入即可。我忘记了如何让 awk 将 FP 视为 INT,以便它为您进行舍入。