tr [option] set1 set2
将来自stdin的输入字符从set1映射到set2,并输出写入stdout中。
若set1长度大于set2,set2会不断重复最后一个字符,知道和set1长度相等。
若set1长度小于set2,set2会自动忽略超出长度。
$ echo “HELLO WORLD” | tr ‘A-Z’ ‘a-z’
对数字简单的加密解密
$echo 12345 | tr ‘0-9’ ‘9876543210’
87654
解密:
$ echo 87654 | tr ‘9876543210’ ‘0-9’
12345
删除字符
$cat file.txt | tr -d ‘set1’
例如:
$echo “Hello 123 world 456” | tr -d ‘0-9’
Hello world
字符集补集
$ echo hello 1 chr 2 next 4 |tr -d -c ‘0-9 \n’
1 2 4
注意:不管-d -c 的位置如何,都会输出1 2 4
用tr压缩字符
$echo “GUN is not UNIX” |tr -s “ “
GUN is not UNIX
tr 的-s选项可以压缩输入中重复字符