tr:translate or delete characters 转换或者删除字符,从标准输入中接受数据,然后将处理过的数据写入标准输出,支持正则表达式。关于正则表达式可以参考博文“正则表达式的初探”
命令格式:$tr [-ds] SET1
常用参数与说明:更多详细信息可以参考man tr页面
-d:删除(delete)字符 后面加上需要删除的字符
-s:取代重复的字符,替换字符
例子:
[root@rhel6164 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@rhel6164 ~]# echo $PATH | tr -d / #删除PATH中的slash(/)
usrlocalsbin:usrlocalbin:sbin:bin:usrsbin:usrbin:rootbin
[root@rhel6164 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@rhel6164 ~]# echo $PATH | tr -s ':' '\n' #把冒号转换成换行符
/usr/local/sbin
/usr/local/bin
/sbin
/bin
/usr/sbin
/usr/bin
/root/bin
[root@rhel6164 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@rhel6164 ~]# echo $PATH | tr -s [:lower:] [:upper:] #把小写字母转换成大写字母
/USR/LOCAL/SBIN:/USR/LOCAL/BIN:/SBIN:/BIN:/USR/SBIN:/USR/BIN:/ROT/BIN
取代重复的字符
[root@rhel6164 ~]# echo bbbcc | tr -s b #取代连续的字符b
bcc
取代重复的字符并替换成其他的字符
[root@rhel6164 ~]# echo bbbcc | tr -s b d #取代重复的字符b,并替换成字符d
dcc