日期:2014-05-16 浏览次数:20611 次
tr用来从标准输入中通过替换或删除操作进行字符转换。实例详解:
1、tr -s "[0-9],[a-z]" < trText:指定数字和小写字母,将重复的删除,只保留第一个。例如I love yyyyyyou,通过命令后I love you。
2、cat trText | tr -s "[\012]":删除空行,其中\012是八进制数
cat trText | tr -s '\n':也是删除空行。
3、tr a-z A-Z < trText:将小写转换成大写
tr [:upper:] [:lower:] < trText: 将大写转为小写
4、tr -sc "[a-z][A-Z]" "\012" < trText:将所以非字母转换为换行,并只保留一个换行。-s表示删除重复的换行符,-c表示[a-z][A-Z]的补集。
例如And the cowwwwwws went homeeeeeeeee通过转换后
And
the
cowwwwwws
went
homeeeeeeeee
5、tr -s "[\136]" "[\040]" < trText:将136(^)转化为40(空格)。
6、tr -d "0-9" < trText:删除数字
-c 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII。
-d 删除字符串1中所有输入字符。
-s 删除所有重复出现字符序列,只保留第一个。
[a-z] a-z内的字符组成的字符串。
[A-Z] A-Z内的字符组成的字符串。
[0-9] 数字串。
\octal 一个三位的八进制数,对应有效的ASCII字符。
[O*n] 表示字符O重复出现指定次数n。因此[O*2]匹配OO的字符串。