使用tr命令发生意外的bash分配结果

时间:2012-03-28 01:58:09

标签: bash shell tr

这是有问题的bash声明:

xx="$(echo 'a_b' | tr '_' '\t')"

为什么下划线用空格而不是标签替换?

2 个答案:

答案 0 :(得分:5)

不是。 :-)

如果您使用echo $xx检查结果,则该标签将替换为空格。

请尝试echo "$xx"(使用双引号)。

答案 1 :(得分:2)

不直接回答你的问题,但你可以用纯粹的Bash做到这一点:

xx='a_b'
xx="${xx//_/    }"

(其中/ }中的空格是文字标签;您可能需要使用^v输入)