1

XMLパーサー を使用しないXMLタグの内容を取得したいので、XMLファイルは次のようになります(XML以上のものが含まれています。これはXML部分にすぎません)。

<ns1:CarrierServiceId>PD_PRIVATPAKKER_W</ns1:CarrierServiceId>
<ns1:LabellingReturned>0</ns1:LabellingReturned>
<ns1:DeliveryDate>2012-07-27T23:00:00Z</ns1:DeliveryDate>
<ns1:DespatchDate>2012-07-26T22:59:59Z</ns1:DespatchDate>
<ns1:International>0</ns1:International>
<ns1:ClearanceDocumentation>0</ns1:ClearanceDocumentation>
<ns1:ExceptionCode>0</ns1:ExceptionCode>

CarrierServiceIdのコンテンツを取得するには、PD_PRIVATPAKKER_Wのみを取得し、以下を使用して行を取得することはできませんが、コンテンツが必要です。

FOUND=$(awk '/<ns1:CarrierServiceId>/ {print $1}' TEST.tmp)

echo "${FOUND}"
4

2 に答える 2

1

山かっこを区切り文字として使用し、フィールドを印刷します。

FOUND=$(awk -F '[<>]' '/<ns1:CarrierServiceId>/ {print $3}' TEST.tmp)
于 2012-06-15T14:58:34.617 に答える
1

grep

grep -Po '(?<=CarrierServiceId>).*?(?=<)' inputFiles
于 2012-06-15T15:00:11.747 に答える