我在文件夹中有一些XML文件,我想用不同的文件替换文件中定义的路径,因此原始文件包含:
<Ruta MIMEType="application/pdf">\\srvfsrvivwsk02.preprod.corp\SDD\Cap_Incoming\example.pdf</Ruta>
结果应该是:
<Ruta MIMEType="application/pdf">\\srvfsrvivwsk35.preprod.corp\SDD2\Cap2_Incoming\Incoming2\example.pdf</Ruta>
我尝试使用以下命令但它无法正常工作:
a='\\srvfsrvivwsk02.preprod.corp\SDD\Cap_Incoming'
b='\\srvfsrvivwsk35.preprod.corp\SDD2\Cap2_Incoming\Incoming2'
sed -i 's/'$a'/'$b'/g' exaple.xml
似乎反斜杠不能按预期工作。你能帮帮我吗?
答案 0 :(得分:0)
反斜杠将转义以下字符,因此您可以使用两个反斜杠\\
来匹配每个\
sed 's/\\\\srvfsrvivwsk02.preprod.corp\\SDD\\Cap_Incoming/\\\\srvfsrvivwsk35.preprod.corp\\SDD2\\Cap2_Incoming\\Incoming2/g' example.xml
│