1
<?xml version="1.0" encoding="utf-8"?><DataTransfer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://cbi.marian.com/xmlschemas/jde_interface_v1.0.xsd"><Summary>
<PO>
<PONumber>1798128110160-1</PONumber>
<PORevision>6</PORevision>
<POSystemID>273906</POSystemID>
<OrderDate>19-02-2015</OrderDate>
<RequiredDate>15-10-2016</RequiredDate>
<PromisedDeliveryDate>27-03-2017</PromisedDeliveryDate>
<RetentionPercentage></RetentionPercentage>
<POReference1>1798128110160-1</POReference1>
<POReference2></POReference2>
</PO>
<POItem>
<LineNumber> 1</LineNumber>
<ItemDescription>Enclosure containing </ItemDescription>
<POReference1>1798128110160-1</POReference1>
<POReference2></POReference2>
</POItem>
<POItem>
<LineNumber> 2</LineNumber>
<ItemDescription>Compressor</ItemDescription>
<POReference1>1798128110160-1</POReference1>
<POReference2></POReference2>
</POItem>
<POItem>
<LineNumber> 3</LineNumber>
<ItemDescription>Cooler</ItemDescription>
<POReference1>1798128110160-1</POReference1>
<POReference2></POReference2>
</POItem>
В приведенном выше xml Я хочу читать только 1-й номер строки под POItem. Я использую следующую команду:Использование xmllint в linux (shell script)
echo cat "//POItem/LineNumber/text()" | xmllint --shell po123.xml
Отображается все 3 значения LineNumber. Возможно ли получить только одно значение LineNumber без использования команды sed. Имя XML-файла - po123.xml
У меня нет xpath в моем текущем xmllint.
это сработало спасибо. – user3814005