tr命令
首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!
我会在当天或者第二天及时回复,并且改进~~
tr命令实现字符转换功能,其功能类似于sed命令,但是,tr命令比sed命令简单,也就是说,tr命令能实现的功能,sed命令都可以实现
tr [option] charset1 chatset2 < 输入文件
tr命令选项及其意义
-c #选定字符串1中字符集的补集,即反选字符串1中的字符集
-d #删除字符串1中出现的所有字符
-s #删除所有重复出现的字符序列,只保留一个
tr命令示例:
删除/etc/passwd文件中a-q字符,并且把结果打印出来
tr -d a-z < /etc/passwd
删除/etc/passwd文件中0-9数字,并且把结果打印出来
tr -d 0-9 < /etc/passwd
删除test文件中所有的换行符,并且把结果打印出来
tr -d \\n < test
tr命令支持的控制字符
\a #警告音
\b #退格键
\f #走行换页
\n #换行符
\r #回车键
\t #tab键
tr命令示例:
将/etc/passwd中所有连续出现在一起的字母压缩成1个
tr -s a-z < /etc/passwd
将/etc/passwd中所有连续出现在一起的数字压缩成1个
tr -s 0-9 < /etc/passwd
将test中所有连续出现的换行符压缩成一个
tr -s \\n < test
将/etc/passwd文件中所有出现的大小写字母压缩成1个
tr -s "[a-z],[A-Z]" < /etc/passwd
tr -s [a-z],[A-Z] < /etc/passwd
tr -s a-z,A-Z < /etc/passwd
将/etc/passwd中的所有小写字母转换为大写字母
tr a-z A-Z < /etc/passwd
删除/etc/passwd中除了a-z,A-Z的全部字符
tr -cd a-z,A-Z < /etc/passwd
删除/etc/passwd中换行符,a-z,A-Z以外的所有字符
tr -cd a-z,A-Z,\\012 < /etc/passwd
匹配出/etc/passwd中o连续出现5次形成的字符串,并将该字符串替换为*字符串
tr o*5 * < /etc/passwd