首页 > 代码库 > 5 shell命令之tr

5 shell命令之tr

这是一个奇妙的命令。

tr的全拼就是translate,即翻译。有趣的是我们能够制定规则进行翻译。使用方法例如以下:

tr [option] set1  [set2]

tr从标准输入接受输入。然后将结果打印到标准输出。tr最主要的功能就是替换。将set1的字符集按序相应并替换成set2中的字符集。

以下看看tr的參数。

-d   删除其后指定的set1的字符。

-c  取set的补集。

-s  替换set1指定的连续的字符为一个set2中相应的字符。

tr支持类似正則表達式的一些集合。

死记硬背肯定是记不下来。所以能够參考一下man手冊。

技术分享

在上面全部这些特定集合中。仅仅有[:upper:]和[:lower:] 能够作为多对多的替换,术语叫做转换字符。由于这两个集合的字符是按序排列的。

其他的字符仅仅能用来进行多对一的替换。


有个问题,假设set1的字符多于set2的字符怎么办,那就将set2里面的最后一个字符去相应全部多出来的字符。

假设set2的字符多于set1的字符呢,那就抛弃set2中多于的字符。

看看实际应用的效果。

技术分享

test.txt的内容例如以下:

技术分享

以上就是对tr命令的简单介绍,所谓熟能生巧。

学习shell命令尤其如此,多试几次自然就慢慢记住了。


5 shell命令之tr