Chinaunix首页 | 论坛 | 博客
  • 博客访问: 785806
  • 博文数量: 143
  • 博客积分: 2077
  • 博客等级: 大尉
  • 技术积分: 2393
  • 用 户 组: 普通用户
  • 注册时间: 2012-09-28 12:57
文章存档

2016年(2)

2015年(3)

2014年(3)

2013年(41)

2012年(94)

分类: LINUX

2013-04-12 22:10:09

                        字符转换命令:tr,col
tr:可以用来删除一段信息中的文字,或是进行文字信息的替换
#tr [-ds] SET1......
 -d:删除信息当中的 SET1 字符串
 -s:替换掉重复的字符
   #last |tr '[a-z]' '[A-Z]'
   #cat /root/passwd |tr -d '\r' > /root/passwd.linux
                        \r DOS的断行符

col:从标准输入读,输出到标准输出. 作用:过滤控制字符
#col [-xb] [-l num]
 -x:将Tab键转换成对应的空格键
 -b:不输出回车符,即删除回车符。比如由DOS或windows下的文本以一个回车和换行结束每一行;而unix和linux则仅以换行作为结束,unix称之为“新       行字符”。将DOS文本拿到unix下,利用vi显示会有^M(^M即ctrl+M,表示回车)。通过-b选项可以去掉。
 -l num:缓冲区行数(要缓冲的行数),默认为128.
     #man col > /tmp/col.man    转换成纯文本文件  你会发现col.man文件中很多的控制字符出现。利用col -bx将之去掉再打印到文件中

col 所能理解的用于回车操作的控制序列以及它们的十进制值都列在下面的表中:


ESC-7 反向换行符(escape后接7) ESC-8 反向半换行符(escape后接8) ESC-9 正向半换行符(escape后接9) backspace 反向移动一列(8);在第一列则忽略. carriage return (13) newline 正向换行符(10);同时执行回车(carriage return)操作 shift in 转到正常字符集(15) shift out 转到备选的字符集(14) space 正向移动一列(32) tab 正向移动到下一个tab(9) vertical tab 反向换行符(11)

丢弃所有不被承认的控制字符和escape序列.

当读取字符时, col 保持着与字符集的联系,而且在输出时确保字符集是正确的.

如果输入设备试图回复到最近被刷新的行, col 会显示一条警告消息. [[ ]]

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