通過shell解析xml檔案

2021-09-05 12:56:00 字數 1101 閱讀 9947

背景

有如下xml檔案,需要通過shell得到每乙個filename中的值

aa.xml

實現

<?xml version="1.0" encoding="utf-8"?>

>

>

aaa.txtfilename

>

>

25684256filesize

>

>

bbb.txtfilename

>

>

25684256filesize

>

>

ccc.txtfilename

>

>

25684256filesize

>

>

ddd.txtfilename

>

>

25684256filesize

>

>

eee.txtfilename

>

>

25684256filesize

>

>

fff.txtfilename

>

>

25684256filesize

>

transmit-context

>

發現了乙個簡單的方法,可以通過awk來實現

for txt_file in

`cat /home/test/aa.txt |

awk -f '>'''`

doecho

$txt_file

done

此時輸出的就是每乙個標籤的值

3. awk

關於awk的簡單用法,例如:

a=value1,value2,value3,value4
如果想得到第二列value2

#','表示以,作為分隔符來讀取a,$2表示以,分割厚的第二段,可以以$nf表示最後乙個,即value4

echo$a|

awk -f ','

''

C 通過XPath解析xml檔案

xpath語法講解 用xpath解析xml的用例在這裡 xpath裡面涉及到的一些引數的方法名 以上主要是我之前蒐集的,但是工作中還是遇到了一些小問題,比如說如何刪除乙個xmlnode。為此,我做了以下demo static void main string args removeall清除所有屬性...

通過SAXReader解析XML

需要匯入包 dom4j 1.6.1 jaxen 1.1.6 1 讀取xml資料 saxreader可以通過多種方式讀取xml資料,並返回document格式的物件。通過檢視原始碼,可以看出read 方法接收file,inputstream和url等格式的引數來讀取相應的xml資料。2 解析xml資料...

建立xml檔案 解析xml檔案

import codecs import xml.dom.minidom doc xml.dom.minidom.document print doc root doc.createelement booklist print u 新增的xml標籤為 root.tagname root.setatt...