我正在尝试执行以下操作:
find . -iname pom.xml
| xargs sed -i
"s/<version>${project.version}</version>/<version>0.9.1-SNAPSHOT</version>/g"
但它不起作用。我需要在这里逃脱什么?
我尝试了多种组合,例如在版本和/
中转义$
。
答案 0 :(得分:5)
逃脱$
和.
。使用不同的分隔符(;
)。
sed "s;<version>\${project\.version}</version>;<version>0.9.1-SNAPSHOT</version>;g"
答案 1 :(得分:0)
您想要的匹配字符串是<version>\${project\.version}<\/version>
(转义$
,.
和/
。您想要的替换字符串是<version>0.9.1-SNAPSHOT<\/version>
(转义/
)。
组合产生:
"s/<version>\${project\.version}<\/version>/<version>0.9.1-SNAPSHOT<\/version>/g"