您好,登录后才能下订单哦!
tr
translate or delete characters(翻译或删除字符)
我理解的意思就是对字符进行转换,或者删除不想要的字符
tr [OPTION]... SET1 [SET2]
将来自标准输入的字符从SET1转换为SET2
例:将所有大写转换为小写
#echo "HELLO HOW ARE YOU?" | tr 'A-Z' 'a-z'
注意:只能用于stdin
常用选项:
-c:补集,所谓补集就是除了给定的字符以外的其它所有字符,不能单独使用此选项
-d:删除指定字符
-s:压缩指定的重复字符
用法举例:
-d:通过例子可以看到指定的集合被删除了
#echo "Hello 1 how 2 are 3 you 4 ?" | tr -d '[0-9]' (中括号可以省略)
-c:通过例子可以看到指定的集合为所有数字,空格,换行符,因为有-d选项,所以除了集合之外的都被删除
#echo "Hello 1 how 2 are 3 you 4 ?" | tr -d -c '0-9 \n'
-s:通过例子可以看到,中间重复多余的空格被压缩了后,只显示一个
# echo "Hello 1 how 2 are 3 you 4 ?" | tr -s ' '
定义集合:
'A-Z'和'a-z'都是集合,我们可以按需求追加字符或字符类来构造集合
’起始字符-结束字符‘:字义连续集合的方式,必须是连续的,若不是连续的,则被定义为3个单的元素,即起 始字符,’-‘,’结束字符‘;
特殊字符:'\t'为制表符,'\n'为换行符
字符类:
alnum:所有字母和数字
digit:所有的数字
alpha:所有的字母
space:空白字符
upper:所有的大写字符
lower:所有的小写字符
punct:标点符号
xdigit:十六进制字符
使用方法:
tr [:字符类:] [:字符类:]
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。