XML或可扩展标记语言是一种流行的数据结构,用于以可交换格式表示数据。它主要用于web服务之间的配置和数据交换。在通过命令行检查Linux中的一些XML时,我们通常需要以更可读和更结构化的方式打印。在本教程中,我们将了解如何在Linux命令行中漂亮地打印XML。
Xmllint公司
xmllint
是由提供的工具 libxml2-utils
包裹。对于Debian、Ubuntu、Mint和Kali等基于deb的发行版,可以像下面这样安装它
$ sudo apt install libxml2-utils
或基于rpm的发行版,如Fedora、CentOS、RedHat
$ sudo yum install libxml2-utils
我们可以格式化名为 data.xml
通过提供 --format
选项。
$ xmllint --format data

Xml第页
xml_pp
由提供 xml-twig-tools
可按如下方式安装。
$ sudo apt install xml-twig-tools
或者
$ sudo yum install xml-twig-tools
我们可以用 xml_pp
wiothout不提供任何选项,只提供如下所示的XML文件名。
$ xml_pp data.xml
Xmlstarlet公司
xmlstarlet
是一个可以以不同方式格式化XML的工具。我们可以为基于deb的发行版安装xmlstarlet,如下所示。
$ sudo apt install xmlstarlet -y
或基于rpm的发行版ı解构
$ sudo yum install xmlstarlet -y
我们将使用 format
和 --indent-tab
用于命令和制表符缩进。
$ xmlstarlet format --indent-tab data.xml

整洁
tidy
该工具是为读取和写入HTMLiXHTML和XML文件的清除标记而开发的。我们可以安装Ubuntu,Debian,Mint和Kali,如下所示。
$ sudo apt install tidy -y
或者给Fedora,CentOS,RedHat
$ sudo yum install tidy -y
我们将使用 -xml
指定文件数据格式和 -i
用于缩进。
$ tidy -xml -i data.xml

正如我们所见,tidy在打印格式化xml之前提供了错误或警告信息。
相关文章: 什么是SOAP(简单对象访问协议)?
Python XML库
是的,python有很多库,其中之一就是 xml
可用于创建或解析XML数据的库。我们可以用 xml.dom.minidom
模块 parseString()
功能如下。我们将重定向名为 data.xml
.
$ cat data.xml | python -c 'import sys;import xml.dom.minidom;s=sys.stdin.read();print xml.dom.minidom.parseString(s).toprettyxml()'
