我想更改与ip相关的版本号。例如对于这个 ip 10.228.134.226
,它应该将版本号从 更改97
为98
<qa:browsers>
<browser name="firefox" defaultVersion="96" defaultPlatform="Windows 10">
<version number="97" platform="Windows 10">
<region name="EU_CENTRAL">
<host name="10.228.134.226" port="4444" count="1"/>
</region>
</version>
<version number="97" platform="Windows 8">
<region name="EU_CENTRAL">
<host name="10.228.134.229" port="4444" count="1"/>
</region>
</version>
<version number="97" platform="Windows 7">
<region name="EU_CENTRAL">
<host name="10.228.134.238" port="4444" count="1"/>
</region>
</version>
</browser>
</qa:browsers>
这里我想改变 的值,defaultVersion
那么我们该怎么做呢?
答案1
用于xmlstarlet
更改具有值为 属性的子节点的节点number
的属性:version
region/host
name
10.228.134.226
xmlstarlet ed \
-u '//version[region/host/@name = "10.228.134.226"]/@number' \
-v 98 file >file.new