tr
用于替换或者删除字符串。
The tr utility copies the standard input to the standard output with substitution or deletion of selected characters.
语法
tr [-cdst] [第一字符集][第二字符集]
参数说明
- -c, –complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换
- -d, –delete:删除指令字符
- -s, –squeeze-repeats:缩减连续重复的字符成指定的单个字符
- -t, –truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等
- 字符集1:指定要转换或删除的原字符集。当执行转换操作时,必须使用参数“字符集2”指定转换的目标字符集。但执行删除操作时,不需要参数“字符集2”;
- 字符集2:指定要转换成的目标字符集。
字符类
[:alnum:]:字母和数字 [:alpha:]:字母 [:cntrl:]:控制(非打印)字符 [:digit:]:数字 [:graph:]:图形字符 [:lower:]:小写字母 [:print:]:可打印字符 [:punct:]:标点符号 [:space:]:空白字符 [:upper:]:大写字母 [:xdigit:]:十六进制字符
实例
- 将输入字符由小写转换大写
$ echo "first blood" | tr 'a-z' 'A-Z'
FIRST BLOOD
或者使用字符集 [:lower:]
[:upper:]
来转换大小写
$ echo "first blood" | tr [:lower:] [:upper:]
FIRST BLOOD
- 删除
删除所有的数字:
$ echo "first 123 blood 456" | tr -d "0-9"
first blood
使用字符集 [:digit:]
删除所有的数字
$ echo "first 123 blood 456" | tr -d [:digit:]
first blood
- 补集
把除数字,空格,换行符之外的所有字符串,都替换成 &
:
$ echo "first 123 blood 456" | tr -c '0-9 \n' '&'
&&&&& 123 &&&&& 456
删除除数字,空格,换行符之外的所有字符串:
echo "first 123 blood 456" | tr -dc '0-9 \n'
123 456
- 压缩
压缩重复的字符串 s
和 数字 2
。
$ echo "he'sssss age issssss 12222222222." | tr -s 's2'
he's age is 12.
今天的文章tr 命令总结_linux实验总结及心得分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/51392.html