Shell学习:关于替换命令-tr-ROT13法则
 
 

 

[root@stu100 ~]# echo abcdef|tr 'abcdef' 'xyzabc'

xyzabc

[root@stu100 ~]# echo abcdef|tr 'a-f' 'x-za-c'

xyzabc

 

下面的实例演示了一个流行的隐藏文本的方法,由于将字母表的第一个字符用第十三个字符替换,第2个字符用第十四个字符替换,依此类推,因此通常称作ROT13(旋转13)

 

[root@stu100 ~]# echo the punchline of the joke is ...|tr 'A-M N-Z a-m n-z' 'N-Z A-M n-z a-m'

gur chapuyvar bs gur wbxr vf ...

 

要使得隐藏文本可读,可通过交换tr参数实现:

 

[root@stu100 ~]# echo gur chapuyvar bs gur wbxr vf ...|tr 'N-Z A-M n-z a-m' 'A-M N-Z a-m n-z'

the punchline of the joke is ...

 

在下面的示例中tr首先替换字符,然后将几对相同的字符替换为单个字符:

 

[root@stu100 ~]# echo tennessee|tr -s 'tnse' 'srne'

serene

 

这就是传说中的ROT13法则了。