转:http://www.cnblogs.com/lwgdream/archive/2013/11/05/3407809.html
前言
通过tr命令来转化数据,比如大小写的转换;用转换成另外一种字符集
命令用法
-s 压缩连续的指定字符集合
-d 删除指定的字符集合
常见用法举例
大小写转换
tr a-z A-Z 或 tr [A-Z] [a-z]
1: [root@master dir]# cat e
2: lwg
3:
4: lwgarmstrong
5: [root@master dir]# cat e | tr '[a-z]' '[A-Z]'
6: LWG
7:
8: LWGARMSTRONG
字符集合转换
比如按照这个对应关系转换(a,b,c,d) –> (1,2,3,4)
1: [root@master dir]# cat f
2: abcdefg
3: aba
4: [root@master dir]# cat f | tr '[a-d]' '[1-4]'
5: 1234efg
6: 121
tr –s 合并连续的字符集合
tr –s ‘ ’ 合并连续的换行。
tr –s ‘[ab]’ 合并联系的a 或者b
1: [root@master dir]# cat -A e
2: lwg$
3: $
4: lwgarmstrong$
5: [root@master dir]# cat e | tr -s ' '
6: lwg
7: lwgarmstrong
1: [root@master dir]# echo "abaabb" | tr -s '[ab]'
2: abab
tr –d 删除指定的字符集合的字符
tr –d ‘ ’删除所有的换行符,那么所有的行都合成了一行
tr –d ‘[0-9]’ 删除所有的数字
1: [root@master dir]# cat -A e
2: lwg$
3: $
4: lwgarmstrong$
5: [root@master dir]# cat e | tr -d ' '
6: lwglwgarmstrong[root@master dir]#
1: [root@master dir]# echo "a123b23c27897d" | tr -d '[0-9]'
2: abcd
特殊说明
1)tr是从标准输入接收数据,并进行转换,输出到标准输出。也就是 tr –s ‘ ’ fileName 这样是错误的
2)转换的字符集合最好一一对应,否则会出现无法预料的情况
总结
tr命令用来转换字符集合。