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