如何解析XML文件中的某些标记并使用Bash将它们存储在数组中?

如何解析XML文件中的某些标记并使用Bash将它们存储在数组中?,xml,bash,parsing,Xml,Bash,Parsing,我对bash脚本非常陌生。我试图解析一个XML文件并跟踪某些元素以将它们存储在数组中 示例XML文件trouble.XML如下所示: <trouble> <problem> <factor name = abc/> </problem> <problem> <factor name = def/> </problem> <trouble> abc def 输出如下所示: <trouble&g

我对bash脚本非常陌生。我试图解析一个XML文件并跟踪某些元素以将它们存储在数组中

示例XML文件trouble.XML如下所示:

<trouble>
<problem>
<factor name = abc/>
</problem>
<problem>
<factor name = def/>
</problem>
<trouble>
abc
def
输出如下所示:

<trouble>
<problem>
<factor name = abc/>
</problem>
<problem>
<factor name = def/>
</problem>
<trouble>
abc
def
此代码段成功打印了factor标记的“名称”。我现在的问题是找到一种方法,以某种方式迭代该名称列表并将其保存到数组中


请帮助,提前谢谢。

使用mapfile,您不需要循环查看结果

#/usr/bin/env bash
#从处理xml的输出读取数组
映射文件-t数组
myArr=($(cat…| xmllint…| sed…)?祝你好运