Shell下处理XML数据工具向导
下载离线安装包
官方 --- Download Package --- libxml2
安装
# 解析 xml 数据--- xmllint 工具 -- 本地源
yum install libxml2-devel libxml2
源码包安装
./autogen.sh [configuration options]
tar xf libxml2-xxx.tar.gz
cd libxml2-xxx
./configure [configuration options]
make
make install
选项
选项 | 含义 |
---|---|
--format | 格式化 |
--noblanks | 去除空格 |
--xpath | 使用 xpath 语法定位元素 |
参考命令
远程获取 Vmware ESXI 机器的 网络设备描述
# 注意: 请提前配置 ESXI 主机的 SSHD
sshpass -p "h3c@123" ssh 172.17.40.66 "esxcfg-info -n -F xml" | xmllint --format - | xmllint --xpath '//network-entities//physical-nic/value[@name="device-name"]' - | sed -e '1i <document>' -e '$a </document>' | xmllint --format - | grep 'value' | sed 's#\(.*>\)\(.*\)\(</.*\)#\2#'
#
远程获取 Vmware ESXI 机器的 网络 Mac 地址
sshpass -p "h3c@123" ssh 172.17.40.66 "esxcfg-info -n -F xml" | xmllint --format - | xmllint --xpath '//network-entities//physical-nic/value[@name="mac-address"]' - | sed -e '1i <document>' -e '$a </document>' | xmllint --format - | grep 'value' | sed 's#\(.*>\)\(.*\)\(</.*\)#\2#'