有一个xml文件,里面内容如下: <project name="aaa" version="****" package="****"> <project name="bbb" version="****" package="****"> <project name="ccc" version="****" package="****"> <project name="ddd" version="****" package="****"> ...... 需要修改某些project的version,已知需要修改的project的name以及新的version号,请问需要怎么用sed或awk来进行替换呢?
这里的问题是,首先要找到需要修改的Project 的那一行,再在该行上面进行修改。
找出行我用的是: cat ./test.xml | while read LINE do echo $LINE | grep -q $1 && ****** done
但是 && 后面的替换就一直弄不出来,请大侠赐教,谢谢 modify_manifest() { sed -r "/\"$1\"/s/vision=\".*\" (.*)/vision=\"$3\" \1/" a.xml > b.xml }
|