功能说明:过滤控制字符。
语 法:col [-bfx][-l<缓冲区列数>]
补充说明:在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符">"和">>",把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符。
参 数:
-b 过滤掉所有的控制字符,包括RLF和HRLF。
-f 滤除RLF字符,但允许将HRLF字符呈现出来。
-x 以多个空格字符来表示跳格字符。
-l<缓冲区列数> 预设的内存缓冲区有128列,您可以自行指定缓冲区的大小。
示例说明:
我在在linux下使用man查看一命令的帮助信息,如果我们想把它导入一文件,方便使用查找功能,如使用vi打开新生成的文件,然后可以在vi下使用很多查找命令,如下示
man ls > ls.txt vi ls.txt N^HNA^HAM^HME^HE ls - list directory contents S^HSY^HYN^HNO^HOP^HPS^HSI^HIS^HS l^Hls^Hs [_^HO_^HP_^HT_^HI_^HO_^HN]... [_^HF_^HI_^HL_^HE]... D^HDE^HES^HSC^HCR^HRI^HIP^HPT^HTI^HIO^HON^HN List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -^H-c^Hcf^Hft^Htu^Huv^HvS^HSU^HUX^HX nor -^H--^H-s^Hso^Hor^Hrt^Ht. Mandatory arguments to long options are mandatory for short options too. -^H-a^Ha, -^H--^H-a^Hal^Hll^H ####more ls.txt显示正常
[root@uyhd000225 ~]# man ls|col -b >ls2.txt #more 和 vi现实都是正常的
:% !col -bx
-b:不输出回车符,即删除回车符。比如由DOS或windows下的文本以一个回车和换行结束每一行;而unix和linux则仅以换行作为结束,unix称之为“新行字符”。将DOS文本拿到unix下,利用vi显示会有^M(^M即ctrl+M,表示回车)。通过-b选项可以去掉。
-x:将tab变为等效的space。如果是tab,在vi中显示^I
转载于:https://blog.51cto.com/fuwenchao/1341964