0
假设我有这样一个XML文件:条件XmlStarlet
<view>
<field table="alice" name="fish"/>
<field id="confirmation" controlType="button" enabled="some-condition">
<title>Confirm...</title>
</field>
<field table="bob" name="cat"/>
<field table="bob" name="dog" hidden="true"/>
</view>
我要输出的所有领域,但输出上存在的属性 条件。
预期结果:
field 'alice.fish'
button "Confirm..." (enabled: some-condition)
field 'bob.cat'
field 'bob.dog' (hidden: true)
当前结果:
field 'alice.fish' (hidden:)
field '.' (hidden:)
field 'bob.cat' (hidden:)
field 'bob.dog' (hidden: true)
"" (enabled:)
button "confirm" (enabled: some-condition)
"" (enabled:)
"" (enabled:)
经由2调用XmlStarlet:
xmlstarlet sel -t -m "//field" -o "field '" -v "@table" -o "." -v "@name" -o "' (hidden: " -v "@hidden" -o ")" -n $1
xmlstarlet sel -t -m "//field" -v "@controlType" -o " \"" -v "@id" -o "\" (enabled: " -v "@enabled" -o ")" -n $1
是能够转动3种不同类型的结果的内部1打电话给 XmlStarlet,这样战士就会保持原来的状态订购?
几乎在那里!我想要的是'title'标签之间的文本,就按钮而言。你能告诉我如何得到它吗? - 这里不是真正的XPath新手。 – user3341592
我的意思是:这里真正的XPath新手! – user3341592
只需将'@ id'替换为'title'即可。 – npostavs