我有一個xml文件,我想獲取一些標籤的值。 XML是這樣如下:如何使用sed獲取兩個xml標籤的值
<?xml version="1.0" standalone = "no"?>
<!DOCTYPE handover_list PUBLIC"EN""h">
<X1>
<X2>
<X3>USA</X3>
<date_time>20170813T18:18-04:00</date_time>
<id action="I">XXXXXXXXXXXXXX</id>
<id action="I">YYYYYYYYYYYYYY</id>
<id action="I">ZZZZZZZZZZZZZZ</id>
</X2>
<X2>
<X3>UAE</X3>
<date_time>20160814T15:15-03:04</date_time>
<id action="I">AAAAAAAAAAAAAA</id>
<id action="I">BBBBBBBBBBBBBB</id>
<id action="I">CCCCCCCCCCCCCC</id>
</X2>
</X1>
什麼我使用的是:
sed -n 's:.*<X3>\(.*\)</X3>.*:\1:p' formated.xml
sed -n 's:.*<id action="I">\(.*\)</id>.*:\1:p' formated.xml
和其給定輸出是這樣的:
USA
UAE
XXXXXXXXXXXXXX
YYYYYYYYYYYYYY
ZZZZZZZZZZZZZZ
AAAAAAAAAAAAAA
BBBBBBBBBBBBBB
CCCCCCCCCCCCCC
我想是合併兩個上面使用的sed命令,以便我可以得到像這樣的輸出:
USA
XXXXXXXXXXXXXX
YYYYYYYYYYYYYY
ZZZZZZZZZZZZZZ
UAE
AAAAAAAAAAAAAA
BBBBBBBBBBBBBB
CCCCCCCCCCCCCC
請看看:什麼時候有人回答我的問題,我應該怎麼辦?(HTTP://計算器.com/help/someone-answers) – Cyrus