我试图通过两种不同模式之间的grep字符串来解析大型日志文件
示例:
line1
line2
...
lineN
pattern1
line4
line6
pattern2
....
other lines
pattern1
line8
line9
pattern2
...
我需要捕捉的线是pattern1 / pattern2之间的部分(所以,line4
到line6
和line8
到line9
)。
我正在使用
sed -n '/pattern1/,/pattern2/p
搜索文件,但需要很长时间才能完成(是的,我的日志文件很大......)
我想知道是否有更有效的方法来加快搜索速度? 理想情况下是单行命令(awk / grep等...)或Python。
答案 0 :(得分:0)
如果您使用Python,可以试试这个:
m = re.search(r'(?<=pattern1)(.|\s)*?(?=pattern2)', log_file, re.MULTILINE)