收集pattern1和pattern2之间的所有字符串,但只打印其中与pattern3匹配的字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了收集pattern1和pattern2之间的所有字符串,但只打印其中与pattern3匹配的字符串相关的知识,希望对你有一定的参考价值。
我正在尝试处理一个大型测试日志文件,该文件打印测试日志的日志。测试块从"start running"
(下面的pattern1
)开始,以"test end"
结尾(下面是pattern2
);在这两个字符串之间有一个"Error Message"
(pattern3
),显示详细的错误信息。
这是我想要做的和我做了什么:
- 搜索日志文件(
test.log
)并使用sed打印出“完整”测试日志:sed -n '/pattern1/,/pattern2/p' test.log
这将收集所有测试的完整日志 - 我想基于步骤1进一步前进,只打印出包含“错误消息”(
pattern3
)的行以及包含pattern1 pattern2的行。如何在单行sed命令中完成它?
3.我可以使用Python re
模块来解决这个问题吗?
以上是关于收集pattern1和pattern2之间的所有字符串,但只打印其中与pattern3匹配的字符串的主要内容,如果未能解决你的问题,请参考以下文章