【发布时间】:2018-04-15 22:44:35
【问题描述】:
我想替换我的 xml 文件的 pkg-ref 行中的版本号,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<pkg-ref id="com.mycomp.pkg.foo1" version="1.1.15" auth="Root" installKBytes="">#foo1.pkg</pkg-ref>
<pkg-ref id="com.mycomp.pkg.foo2" version="1.1.15" auth="Root" installKBytes="">#foo2.pkg</pkg-ref>
我试过这个:
#!/bin/sh
NEW_VERSION="1.2.0"
sed -ie "s/version=\"*.*.*\"/version=\"$NEW_VERSION\"/" foo.xml
...但它删除了该行的其余部分,并替换了只有 2 位数字且我不想要的 xml 版本...留给我这个:
<?xml version="1.2.0"?>
<pkg-ref id="com.mycomp.pkg.foo1" version="1.2.0">#foo1.pkg</pkg-ref>
<pkg-ref id="com.mycomp.pkg.foo2" version="1.2.0">#foo2.pkg</pkg-ref>
我的 sed 行应该是什么?
谢谢。
【问题讨论】: