Bash 替换特殊字符 '

Bash 替换特殊字符 '

我已经读过的所有问题和答案都不是我的解决方案。所以,我想做的就是替换'bash 中的特殊字符。

这有效:

A="abc"
B="${A//[b]/x}"

但这不起作用:

A="a'b"
B="${A//[']/\'}"

另外,我也尝试过:

B="${A//[']/\\'}"
B="${A//[']/\\\'}"
B="${A//[']/\'''}"
B="${A//[']/'\\''}"

B仍会如此a'b

答案1

这种方式有效:

A="a'b"
B="${A//\'/\\\'}"

两个注意事项:

  1. []当其中只有一个字符时,这些是不必要的
  2. 你需要逃脱\'进入替换。

相关内容