需要帮助来比较xml标签 我需要在Linux环境中比较2个xml文件标签。 我只想比较标签而不是价值。 比如说:
1.xml有
<CSVPrefix> 01 </CSVPrefix>
<CSVPostfix> e </CSVPostfix>
<CSVLandingZone> xyz </CSVLandingZone>
2.xml有
<CSVPostfix>te</CSVPostfix>
<CSVLandinone>/tmp/csv/</CSVLandingZone>
有没有免费的工具可以做到这一点? 或者甚至是一个shell脚本都可以,因为这是我们设置中支持的。
目前不支持其他语言,因此我无法编写任何py或java代码来进行比较。
答案 0 :(得分:1)
第1步(任何shell):
$ xmlstarlet sel -t -m "/some-root/*" -v "name()" -n file1.xml
CSVPrefix
CSVPostfix
CSVLandingZone
第2步(像bash一样):
diff ... <(xmlstarlet sel ...) <(xmlstarlet sel ...)