可能重复:
在引号SED,盼着斜线
在我的bash脚本我有一个路径字符串,这是我应该在使用sed
模式。
SRC_PATH="$PWD"
sed "s/<SRC_PATH>/$SRC_PATH/g" template.sh > replaced.sh
我怎样才能逃避$SRC_PATH
字符串,它会通过SED安全地接受为面值替换?
可能重复:
在引号SED,盼着斜线
在我的bash脚本我有一个路径字符串,这是我应该在使用sed
模式。
SRC_PATH="$PWD"
sed "s/<SRC_PATH>/$SRC_PATH/g" template.sh > replaced.sh
我怎样才能逃避$SRC_PATH
字符串,它会通过SED安全地接受为面值替换?
你不必逃避它。 只需使用其他分隔符:
sed "s@<SRC_PATH>@$SRC_PATH@g" template.sh > replaced.sh
但你必须确保SRC_PATH不含@
(或者,如果你选择它的其他符号)。
使用s%$OLDPATH%$NEWPATH%
您可以选择您的分隔符。 如果%
是太危险了,考虑控制-A来代替。