在 Mac 上用 sed 替换 XML 属性
Replace XML attribute with sed on Mac
我正在尝试在 Mac OS X 上用 sed
替换 xml 属性,但无法正常工作。
我要匹配name="..."
并替换为name="Test"
。
我正在使用以下 sed,它不起作用:
sed -i -E 's/name="\(.*?\)"/name="Test"/' file.xml
谁能告诉我哪里错了?
不需要赶团等,这样就够了:
sed -E 's/name="[^"]*"/name="Test"/' file.xml
看到它只查找 name="
后跟不来自 "
.
的任何字符
测试
$ cat hi
<test name="hello buddy">aaa</test>
$ sed -E 's/name="[^"]*"/name="Test"/' hi
<test name="Test">aaa</test>
我正在尝试在 Mac OS X 上用 sed
替换 xml 属性,但无法正常工作。
我要匹配name="..."
并替换为name="Test"
。
我正在使用以下 sed,它不起作用:
sed -i -E 's/name="\(.*?\)"/name="Test"/' file.xml
谁能告诉我哪里错了?
不需要赶团等,这样就够了:
sed -E 's/name="[^"]*"/name="Test"/' file.xml
看到它只查找 name="
后跟不来自 "
.
测试
$ cat hi
<test name="hello buddy">aaa</test>
$ sed -E 's/name="[^"]*"/name="Test"/' hi
<test name="Test">aaa</test>