我有一个要求,我需要读取XML文件并替换包含/
,"
的标记并将其另存为新文件。
原始代码格式:
<CollateralReportDocument xmlns="http://schemas.foo.com/sII/CollateralReportDocument/1.0">
新文件的标签应为:
<CollateralReportDocument>
我尝试过使用
Sed -i 's/<CollateralReportDocument xmlns="http://schemas.foo.com/sII/CollateralReportDocument/1.0">
/ <CollateralReportDocument>/g' filename.xml
......但它不起作用。你能帮我解决这个问题吗?
答案 0 :(得分:0)
您使用/
作为分隔符,但您的字符串中也有一些/
可以替换。
您应该使用#
作为分隔符。
<强> Linux的:强>
sed -i 's#<CollateralReportDocument xmlns="http://schemas.foo.com/sII/CollateralReportDocument/1.0">#<CollateralReportDocument>#g' filename.xml
<强> MACOS:强>
sed -i '' 's#<CollateralReportDocument xmlns="http://schemas.foo.com/sII/CollateralReportDocument/1.0">#<CollateralReportDocument>#g' filename.xml