使用tr替换一个具有多个字符的char

时间:2011-06-15 08:29:34

标签: bash shell

  `echo "a~b" | tr '~' "=="`

这输出a = b。但我想要一个== b。 我怎么能用tr?

来做到这一点

3 个答案:

答案 0 :(得分:22)

tr只需翻译/删除字符。

尝试这样的事情:

 echo "a~b" | sed 's/~/==/g'

答案 1 :(得分:13)

您无法使用tr

相反,使用bash字符串操作${string/substring/replacement}。例如:

str="a~b"
echo ${str/"~"/"=="}

或使用sed

echo "a~b" | sed 's/~/==/'

答案 2 :(得分:2)

你不能; tr只能映射单个字符。使用sed。