在匹配字符串后获取所有内容的最佳方法,包括匹配的字符串?

时间:2017-06-22 09:51:29

标签: bash

我有一个xml文件,我想使用grep(或使用替代命令)来获取<id>thisIsATest</id>之后的所有内容,包括我刚刚指定的匹配字符串。

最好的办法是什么?我看到多个查询在匹配字符串之后获取,但是排除了从最终输出中搜索的字符串。

所以输出结果为:

<id>thisIsATest</id>
... rest of xml file after the above tag

1 个答案:

答案 0 :(得分:0)

不要使用正则表达式解析xml。为了快速,不稳定黑客攻击命令行,您可以使用awk

awk '/<id>thisIsATest<\/id>/{p=1}p' input.file

说明,我正在检查模式<id>thisIsATest<\/id>并在找到变量p=1后设置它。如果p为真,则awk将打印这些行,表示模式出现的任何行,包括它。