引言
tr命令通常用于替换标准输入字符串中的字符。
请注意,操作单位是字符,而不是字符串。
也就是说,无论是替换还是删除,它都是针对链中的特定字符的。
例如,tr命令无法轻松实现字符串替换。将HelloWorld转换为HelloBeijing,但是您可以轻松地将每个字母从大写更改为小写。回声“ HelloWorld” | tr'[AZ]''[az]',最后离开了helloworld。
2)
使用方法
Tr[选项]SET1[SET2]
如果SET1通常用作要处理的字符集,则必须提供SET1。
通常仅在将tr用于字符替换时才使用SET2。
同样,SET2和SET1必须具有相同的长度。
例如,回显“ x0y0z” | tr[xyz][abc],请注意tr是用于字符而不是字符串。
接下来,在此示例中,单词x替换为字母a,字母y替换为字母b,字母z替换为字母c。
它没有用abc代替xyz。
因此,SET2的长度必须与SET1相同。
在此示例中,最终生成a0b0c。
选件
-d或--delete,echo删除指定的字符,例如“ i2i3ii0i3i4i9i” | tr-d[0-9],删除字符串中的所有数字,最后生成iiiiiiii。
-c或--complement,反向字符。SET1中的字符不会被处理,其余字符将被相应地处理。
例如,| tr-d-c[e]遗漏“ He ?? He”会删除字母e以外的字符。
-s或-squeeze-repeats,echo将连续字符转换为单个字符,例如“ Ilooooooovemymoneyyyyyyyyyy” | tr-s[a-z],最终产生Ilovemymoney。
设置
CHAR1-CHAR2指示范围。
小,大,大或小
常见的反斜杠转义字符,例如'
','\ T','\ r'
[:字母:]:所有字母字符和数字
[:数字:]:所有数字
[:上::]:所有大写字母
[:空格:]:所有水平和垂直空格
3)
一般用途
1小写到大写:
回声晕| tr[a-z][A-Z]或回声“ hello” | tr[:底部:][:顶部:]
2删除Windows文件引起的字母“ ^ M”
Cat $文件名| tr-d“ \ r”
3删除连续字符
生态“ hhhhhh” | tr-s[:alnum:]
