Linux tr命令详解
tr
命令是一款流式编译器,可对来自标准输入的字符进行替换、删除、修改等操作,例如将小写字母转换为大写字母,或将某个字符删除。
语法
tr [选项] [字符串1] [字符串2]
选项
选项 | 描述 |
---|---|
-c |
它用来某个指定字符集合之外的所有字符。 |
-d |
从指定的字符集合中删除字符。 |
-s |
把重复出现的字符压缩为单个字符。 |
字符串1和字符串2的用法
- 当不指定字符串2时,删除字符串1指定的所有字符。
- 当两个字符串长度相同时,将字符串1中的每个字符都替换成字符串2中对应位置的字符。
测试示例
- 将文件内容的小写转换为大写。
$ cat text.txt
Hello World!
How are you?
$ cat text.txt | tr '[:lower:]' '[:upper:]'
HELLO WORLD!
HOW ARE YOU?
这个示例中,我们通过管道将 text.txt
这个文件的内容传递给 tr
命令,并使用字符类 [:lower:]
来表示小写字母,将其转换为大写字母 [:upper:]
。
- 删除字符串中的重复字符。
$ echo "aababac" | tr -s 'a'
ababc
这个示例中,我们将 aababac
这个字符串中连续出现的 a
字符压缩为单个字符,输出结果为 ababc
。
这就是 tr
命令的基本使用方法,除了上述示例外,还有很多其他有用的功能可供探索。