国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Linux Shell > 正文

利用Shell解析處理XML的方法匯總

2020-07-27 18:50:34
字體:
供稿:網(wǎng)友

前言

前幾天在干活的時(shí)候遇到一個(gè)需要解析處理xml文件的一個(gè)需求,當(dāng)時(shí)考慮到邏輯比較復(fù)雜,因此用java慢慢搞了搞。不過這個(gè)需求經(jīng)常會(huì)變,每次變化之后都要重新找到j(luò)ar包的代碼,改了之后還要替換原來的jar包,一來不方便修改,二來不方便統(tǒng)一保存代碼,三來也不方便查看jar包的功能。

其實(shí)對(duì)于這種比較靈活的功能,最方便高效的做法是采用一些腳本語言,比如python,ruby等等,開發(fā)效率高,而且也能處理一些復(fù)雜邏輯。但是由于種種原因,工作中有的機(jī)器沒有安裝這些語言的解釋器。因此不得已,研究了一波用shell腳本解析xml的方法。

說到底,shell還是不太適合處理復(fù)雜的邏輯,但是對(duì)于一些簡(jiǎn)單的查找替換等需求,用shell來搞還是挺方便的。

我這里主要采用了下面三個(gè)工具:

  • xmllint
  • xpath
  • xml2

下面就分別總結(jié)下這三個(gè)工具的用法,方便以后查閱。

xmllint

簡(jiǎn)述

xmllint其實(shí)是由一個(gè)叫l(wèi)ibxml2的c語言庫函數(shù)實(shí)現(xiàn)的一個(gè)小工具,因此效率比較高,對(duì)不同系統(tǒng)的支持度也很好,功能也比較全。他一般屬于libxml2-utils這個(gè)軟件包,因此類似與sudo apt install libxml2-utils的命令就可以安裝。

功能

xmllint至少支持下面幾個(gè)常用功能:

  • 支持xpath查詢語句
  • 支持類shell的交互式查詢
  • 支持xml格式驗(yàn)證
  • 支持dtd,xsd對(duì)xml的校驗(yàn)
  • 支持編碼轉(zhuǎn)換
  • 支持xml格式化
  • 支持去空格壓縮
  • 支持時(shí)間效率統(tǒng)計(jì)

其實(shí)我們比較常用的功能主要也就是三個(gè)

主站蜘蛛池模板: 图们市| 门源| 东山县| 邓州市| 泸西县| 华阴市| 砚山县| 滦南县| 长岭县| 晋宁县| 宁安市| 叙永县| 斗六市| 抚松县| 天长市| 江城| 西丰县| 锦州市| 奉节县| 上犹县| 界首市| 达州市| 忻州市| 毕节市| 灵璧县| 盐山县| 县级市| 南投市| 高台县| 临汾市| 娱乐| 手游| 陆川县| 扶绥县| 大宁县| 兖州市| 南投市| 吉木萨尔县| 清水县| 鄂温| 高尔夫|