gpt4 book ai didi

xmlstarlet 选择值

转载 作者:数据小太阳 更新时间:2023-10-29 01:39:38 25 4
gpt4 key购买 nike

这是 xml 数据:

<DATA VERSION="1.0">
<TABLES>
<ITEM>
<identifyer V="1234"></identifyer>
<property1 V="abcde"></property1>
<Property2 V="qwerty"></property2>
</ITEM>
<ITEM>
<identifyer V="5678"></identifyer>
<Property1 V="zyxwv"></property1>
<Property2 V="dvorak"></property2>
</ITEM>
</TABLES>
</DATA>

我正在尝试查找 identifyer 值为 1234 的项目的 property2。我可以选择数据:

$ xmlstarlet sel -t -c "/DATA/TABLES/ITEM/identifyer [@V=1234]" test.xml 
<identifyer V="1234"/>

两种类型的输出是可取的:

$ xmlstarlet <some magic>
<identifyer V="1234"></identifyer>
<property1 V="abcde"></property1>
<Property2 V="qwerty"></property2>

并且:

$ xmlstarlet <some magic>
qwerty

最佳答案

关键是从 ITEM 节点开始,而不是标识符:

$ xmlstarlet sel -t -c "/DATA/TABLES/ITEM[identifyer/@V=1234]" test.xml
<ITEM>
<identifyer V="1234"/>
<property1 V="abcde"/>
<Property2 V="qwerty"/>
</ITEM>

然后你可以挑选出你想要的位:

$ xmlstarlet sel -t -c "/DATA/TABLES/ITEM[identifyer/@V=1234]/*" test.xml
<identifyer V="1234"/><property1 V="abcde"/><Property2 V="qwerty"/>

$ xmlstarlet sel -t -v "/DATA/TABLES/ITEM[identifyer/@V=1234]/Property2/@V" test.xml
qwerty

关于xmlstarlet 选择值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12640152/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com