我很困惑关于方式-s
,-t
以及-c
选择在工作TR命令。当我做
echo I am a good boy | tr good bad
Run Code Online (Sandbox Code Playgroud)
我得到输出:
I am a bddd bdy
Run Code Online (Sandbox Code Playgroud)
这是完全可以理解的,因为o
在good
. 代替 的最后一个可能的变化o
是d
,因此是输出。
现在当我做
echo I am a good boy | tr -s good bad
Run Code Online (Sandbox Code Playgroud)
输出是
I am a bd bdy
Run Code Online (Sandbox Code Playgroud)
该-s
选项应该将集合 1 中每个字符的每个重复出现压缩为单个出现,然后将集合 1 中的每个字符更改为集合 2 中位于相同位置的相应字符。
所以应该是
I am a bad bay.
Run Code Online (Sandbox Code Playgroud)
为什么要改变?
此外,当我做
echo I am a good boy | tr -c …
Run Code Online (Sandbox Code Playgroud)