Chinaunix首页 | 论坛 | 博客
  • 博客访问: 791654
  • 博文数量: 179
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1536
  • 用 户 组: 普通用户
  • 注册时间: 2015-01-27 11:05
个人简介

MySQL工程师 QQ:1815357042

文章分类

全部博文(179)

文章存档

2015年(179)

分类: LINUX

2015-03-04 15:43:30

转载自:
http://www.cnblogs.com/ningvsban/p/3725464.html
(认识和学习BASH)

col命令文件过滤分割与合并 col命令是一个标准输入文本过滤器,它从标注输入设备读取文本内容,并把内容显示到标注输出设备。
在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符>和>>,把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col命令则能有效滤除这些控制字符。

语法 col

(选项)
选项
-b:过滤掉所有的控制字符,包括RLF和HRLF;
-f:滤掉RLF字符,但允许将HRLF字符呈现出来;
-x:以多个空格字符来表示跳格字符;
-l<缓冲区列数>:预设的内存缓冲区有128列,用户可以自行指定缓冲区的大小。



  1. [root@www ~]# col [-xb]
  2. 选项与参数:
  3. -x :将 tab 键转换成对等的空格键
  4. -b :过滤掉所有的控制字符,包括RLF(Reverse Line Feed)和HRF(Halt RLF)

  5. 范例一:利用 cat -A 显示出所有特殊按键,最后以 col 将 [tab] 转成空白
  6. [root@www ~]# cat -A /etc/man.config <==此时会看到很多 ^I 的符号,那就是 tab
  7. [root@www ~]# cat /etc/man.config | col -x | cat -A | more
  8. # 嘿嘿!如此一来, [tab] 按键会被取代成为空格键,输出就美观多了!

  9. 范例二:将 col 的 man page 转存成为 /root/col.man 的纯文本档
  10. [root@www ~]# man col > /root/col.man
  11. [root@www ~]# vi /root/col.man
  12. COL(1) BSD General Commands Manual COL(1)

  13. N^HNA^HAM^HME^HE
  14.      c^Hco^Hol^Hl - filter reverse line feeds from input

  15. S^HSY^HYN^HNO^HOP^HPS^HSI^HIS^HS
  16.      c^Hco^Hol^Hl [-^H-b^Hbf^Hfp^Hpx^Hx] [-^H-l^Hl _^Hn_^Hu_^Hm]
  17. # 你没看错!由于 man page 内有些特殊按钮会用来作为类似特殊按键与颜色显示,
  18. # 所以这个文件内就会出现如上所示的一堆怪异字符(有 ^ 的)

  19. [root@www ~]# man col | col -b > /root/col.man



阅读(828) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~