0
示例XML:需要找到XML元素的值
<parts>
<title>computer parts</title>
<components>
<hardware>motherboard</hardware>
<id>1234</id>
</components>
<part>
<item>motherboard</item>
<manufacturer>asus</manufacturer>
<model>p3b-f</model>
<cost> 123.00</cost>
</part>
<components>
<hardware>video card</hardware>
<id>2345</id>
</components>
<part>
<item>video card</item>
<manufacturer>ati</manufacturer>
<model>all-in-wonder pro</model>
<cost> 160.00</cost>
</part>
<components>
<hardware>sound card</hardware>
<id>3456</id>
</components>
<part>
<item>sound card</item>
<manufacturer>creative labs</manufacturer>
<model>sound blaster live</model>
<cost> 80.00</cost>
</part>
</parts>
在上面的示例XML,我需要在components
元素的值motherboard
第一搜索;如果在那裏找到該值,那麼我們需要搜索item
標記下的<part>
元素中的值,如果該值在item
標記中可用,那麼我們應該得到model
標記的值。
注意:我突出顯示了需要搜索的值和需要提取的值。
如何在Bash中做到這一點?
到目前爲止您嘗試過什麼?你能告訴我們你的代碼嗎?你有沒有嘗試過使用'xmlstarlet'? –
請勿使用bash;相反,使用xmllint或xmlstartlet和xpath來完成此操作。理想情況下,您應該使用具有XML解析器的腳本語言。 – NinjaGaiden
你可以舉一個例子,使用你給出的示例xml嗎?我不明白你是否在尋找名爲'motherboard'的標籤或價值。 – Anubis