重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
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 [:字符类:] [:字符类:]