我正在带有扩展正则表达式的makefile内使用sed,以这样的方式用变量Initial
和Final
替换已定义行之间的文本-
sed -i -r -e "/$$Initial/,/$$Final/s/$$orig/$$new/g" $$file; \
上面的方法有效,但是它的变量值中有很多forward slash
,可以通过对它们进行两次转义来对其进行转义。如果我可以将定界符替换为其他一些符号(如下所示),则看起来会更干净:
sed -i -r -e "\!$$Initial!,!$$Final!s!$$orig!$$new!g" $$file ; \
但这显示sed表达式中的,
错误。您能提出建议吗?