Unix:WildCard SubString在XML标签之间搜索

时间:2017-02-01 20:02:21

标签: xml linux shell unix

我有一个巨大的Web服务请求和响应的XML日志文件。 每个Web服务都有一个常见的Request标记,如下所示

<s:Envelope ......Some tags before Request tag <xyzServiceRequest>Request Data   </xyzServiceRequest></s:Body></s:Envelope>


<s:Envelope ....Some more tags before Request tag <abcServiceRequest xmlns="urn" >Request Data  of another service </abcServiceRequest></s:Body></s:Envelope>

<s:Envelope ...Few more tags before request <defServiceRequest xmlns="urn" /> </s:Body></s:Envelope>

使用Unix命令,我只想从上面的数据中提取服务请求名称。

输出应该是:

xyzServiceRequest

abcServiceRequest

defServiceRequest

1 个答案:

答案 0 :(得分:1)

使用

grep -o '<[^</]*ServiceRequest'    YourLogFile  | sed 's/<//'