Linux的man手册转成Windows下可读格式(TXT和PDF)的方法

在Linux世界里,我们通常需要使用man来查阅一些命令或函数的帮助信息,一般使用“man 命令或函数名称”的格式就能进行简单的查询。我们如果想把man手册信息保存下来,直接用如下命令生成的文件在Windows下就会乱码:

[root@localhost workspace]#man socket > socket.txt

我们把socket.txt下载到Windows下,用记事本打开就会乱码。要消除这些控制字符引起的乱码,我们就要用到col命令。

一、Linux下col命令介绍

功能说明:过滤控制字符。
语  法:col [-bfx][-l<缓冲区列数>]
补充说明:在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符”>”和”>>”,把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符。
参  数:
-b 过滤掉所有的控制字符,包括RLF和HRLF。
-f 滤除RLF字符,但允许将HRLF字符呈现出来。
-x 以多个空格字符来表示跳格字符。
-l<缓冲区列数> 预设的内存缓冲区有128列,您可以自行指定缓冲区的大小。

二、用col命令解决man手册乱码

1、TXT格式:man name | col -b > name.txt

# -b 过滤掉所有的控制字符,包括RLF和HRLF。
[root@localhost workspace]#man socket | col -b > socket.txt

2、PDF格式:man -t name | ps2pdf -> name.pdf

# -t 使用troff命令格式化手册信息。如果在超文本信息基中查找到手册页面,则忽略该标志。
# ps2pdf - Convert PostScript to PDF using ghostscript
[root@localhost workspace]#man -t socket | ps2pdf -> socket.pdf

注:用Linux下的col命令过滤掉所有控制字符,生成的TXT文本文件效果已经不错了。但是用troff命令格式化手册信息,生成的PDF文件真的很漂亮很美观,朋友们不妨一试~~~

Leave a Reply

Your email address will not be published. Required fields are marked *