tr

        用来从标准输入中通过替换或删除操作进行字符转换

                -c或--complerment 取代所有不属于第一字符集的字符。
                -d或--delete 删除所有属于第一字符集的字符。
                -s或--squeeze-repeats 把连续重复的字符以单独一个字符表示。

                -t或--truncate-set1 先删除第一字符集较第二字符集多出的字符



tr 可以对来自标准输入的字符进行替换,删除以及压缩


tr [options] set1 set2 

set1 set2 是字符类,字符集, 两者总是位数相等,不等就自动补或者丢弃


echo 12345 | tr '0-9' '9876543210'

87654

实现了加密12345,很容易吧

echo   87654 |tr '9876543210' '0-9'

12345

解密了


删除字符

cat file.txt |tr -d 'set1'

删除set1的内容

echo 'who 123'|tr -d '0-9'

who


字符集补集

tr -c [set1] [set2]


echo hello 1 char 2 next 4 |tr -d -c '0-9 \n'

1 2 4


压缩字符

tr -s [set1]

把多个空格变成一个空格

echo "GNU IS     NOT        UNIX"|tr -s ' '


GNU IS NOT UNIX