逃脱SED搜索模式的路径[复制](Escape a path for sed search patt

2019-07-30 15:45发布

可能重复:
在引号SED,盼着斜线

在我的bash脚本我有一个路径字符串,这是我应该在使用sed模式。

SRC_PATH="$PWD"
sed "s/<SRC_PATH>/$SRC_PATH/g" template.sh > replaced.sh

我怎样才能逃避$SRC_PATH字符串,它会通过SED安全地接受为面值替换?

Answer 1:

你不必逃避它。 只需使用其他分隔符:

sed "s@<SRC_PATH>@$SRC_PATH@g" template.sh > replaced.sh

但你必须确保SRC_PATH不含@ (或者,如果你选择它的其他符号)。



Answer 2:

使用s%$OLDPATH%$NEWPATH% 您可以选择您的分隔符。 如果%是太危险了,考虑控制-A来代替。



文章来源: Escape a path for sed search pattern [duplicate]