如何使用 bash 括号替换语法全局替换表达式?

如何使用 bash 括号替换语法全局替换表达式?

我想使用 bash 语法来替换所有匹配模式${var/pattern1/pattern2}的内容,而不是第一个。$varpattern1

$ A=aa 
$ echo ${A/a/b}
ba

我想要得到的bb而不是ba

答案1

您可以尝试以下语法,其输出为:

$ A=aa 
$ echo ${A//a/b}
bb

${A//a/b}用 b 替换 a 的所有匹配项。而${A/a/b}仅替换 a 的第一个匹配项。

有关 Bash 字符串操作的更多详细信息,请参见这里

相关内容