需要帮助比较xml标签 我需要在 Linux 环境中比较 2 个 xml 文件标签。 我只想比较标签而不是值(value)。 比如说:
1.xml有
<CSVPrefix> 01 </CSVPrefix>
<CSVPostfix> e </CSVPostfix>
<CSVLandingZone> xyz </CSVLandingZone>
2.xml有
<CSVPostfix>te</CSVPostfix>
<CSVLandinone>/tmp/csv/</CSVLandingZone>
是否有任何免费工具可用于执行此操作? 甚至一段 shell 脚本都可以,因为这是我们的设置所支持的。
目前不支持其他语言,因此我无法编写任何 py 或 java 代码来比较它。
最佳答案
第 1 步(任何 shell):
$ xmlstarlet sel -t -m "/some-root/*" -v "name()" -n file1.xml
CSVPrefix
CSVPostfix
CSVLandingZone
第 2 步(类似 bash 的东西):
diff ... <(xmlstarlet sel ...) <(xmlstarlet sel ...)
关于xml - 只比较 linux 中的 xml 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24901340/