【问题标题】:How to extract XML data in shell script? [duplicate]如何在 shell 脚本中提取 XML 数据? [复制]
【发布时间】:2021-07-07 00:59:55
【问题描述】:

我正在寻找一种从以下 XML 文件结构中提取数据的方法:

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <types>
        <members>**MyClassController**</members>
        <name>ApexClass</name>
    </types>
    <version>51.0</version>
</Package>

预期的结果是 MyClassController。我应该使用什么命令,你能给我一个示例吗?

【问题讨论】:

  • 我会使用xmlstarlet sel -t -v '//_:members[text()]' input.xml
  • @Shawn,谢谢。你的建议也对我有用。

标签: xml shell


【解决方案1】:

这个答案可能会有所帮助 How to parse XML using shellscript?

更简单的方法是,如果你确切知道你想要什么标签,你就可以做

rg -o '<members>(.*)</members>' -r '$1' < your.xml

rg 是 ripgrep (https://github.com/BurntSushi/ripgrep),一个很棒的工具,但你需要安装

【讨论】:

  • 谢谢@Leo Liu,代码适用于我的情况。
猜你喜欢
  • 1970-01-01
  • 2021-02-02
  • 2011-10-14
  • 2021-06-15
  • 1970-01-01
  • 2013-12-27
  • 2011-03-02
  • 1970-01-01
相关资源
最近更新 更多