我正在尝试创建批处理文件以从文件中提取数据并将其设置为变量。
棘手的部分是我需要读取XML文件,而我只需要以下行的引号之间的数据......
narrative="I only need this text here"
该行中的文本还可以包含空格,括号,斜杠,短划线和冒号。
示例XML文件:
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<cadcall>
<call callnumber="123456" jurisdiction="abcd" department="dept 1" complaint="cost" priority="M" calltencode="" callername="Persons Name" phonenumber="Cell Number HERE" narrative="[10/02/2012 14:56:27 : pos9 : PERSON] Fairly long narrative here describing issue of dispatch, but sometimes these can be short." alarmtype="" ocanumber="0000000000" disposition1="TRAN" />
</cadcall>
答案 0 :(得分:1)
执行此操作的正确工具是来自xmllint
的{{1}},请提供更完整的XML示例,我将告诉您如何在{{1}上使用libxml
请求}}
编辑:
这里有一个使用Xpath的解决方案(带有一点hack:Xpath
):
XML
答案 1 :(得分:0)
没有看到完整的输入,只是基于您的示例行。 grep适合你。
kent$ echo 'narrative="I only need this text here"'|grep -Po '(?<=narrative=")[^"]*'
I only need this text here