用于从xml文件中提取特定标记信息的shell脚本
我想为所有相应的用于从xml文件中提取特定标记信息的shell脚本,xml,shell,xml-parsing,Xml,Shell,Xml Parsing,我想为所有相应的标签提取标签信息数据 文件中所有标记的数据为:-1 0 2 4 7 但是我只想要标签中的信息:2 4 7[所需输出] 主支票 真的 -1 照相机01 真的 0 声音1.wav 真的 2. 声音2.wav 真的 4. 声音3.wav 真的 7. 使用xmlstatet工具: xmlstarlet sel -t -v "//SOUNDCHEK/InFrame" -n input.xml //SOUNDCHEK/InFrame-xpath表达式,用于选择属于SOUNDCHEK节
标签提取
标签信息数据
文件中所有
标记的数据为:-1 0 2 4 7
但是我只想要
标签中的
信息:2 4 7[所需输出]
主支票
真的
-1
照相机01
真的
0
声音1.wav
真的
2.
声音2.wav
真的
4.
声音3.wav
真的
7.
使用xmlstatet
工具:
xmlstarlet sel -t -v "//SOUNDCHEK/InFrame" -n input.xml
//SOUNDCHEK/InFrame
-xpath表达式,用于选择属于SOUNDCHEK
节点子节点的所有InFrame
节点
输出:
2
4
7
尝试使用xmllint并使用xpath选择所需的数据
xmllint --xpath '/APP/SOUNDCHECK/InFrame/text()' file.xml
感谢您的回复,希望您能使用标准命令或shell提供一些解决方案script@ScriptWriter,xml/html解析器是解析xml/html数据的唯一编写工具。任何其他grep/bash/shell工具都应该被视为肮脏的黑客和脆弱的方法