使用一个 sed 命令替换两个字符

使用一个 sed 命令替换两个字符

我正在尝试使用一个 sed 命令删除=和字符:]

# echo "A=[A]" | sed s'/[=\]]/ /g'
A=[A]

这个语法有问题吗?

我期望 sed 得到以下结果

# echo "A=[A]" | ....sed 
A [A

答案1

echo "A=[A]" | sed s'/[]=]/ /g'

一个[一个

答案2

您可以使用“-e”标志执行多个替换,例如:

# echo "A = [A]" | sed -e 's/=//' -e 's/]//'
A  [A

在单个替换中可能可以同时匹配“=”和“]”,但即使如此,我也不认为它比使用“-e”有太大好处。

答案3

它可能更容易使用tr做这样的事情,因为它不涉及弄乱 RE

echo "A=[A]<-" | tr "]=" " "
A [A <- 

相关内容