Linux grep命令用于匹配具有多个选项的多个模式

时间:2014-09-16 03:02:53

标签: regex linux

如何使用grep命令将多个模式与多个选项匹配,即

cat example.txt | grep -A 2 -e "test1" -A 5 -e "test2"

主要目标是打印test1之后的2行或者test2之后的5行,但是当我使用上面的grep命令时,它会在两种模式之后打印5行。

1 个答案:

答案 0 :(得分:0)

您可以使用Perl one-liner进行此操作。

perl -ne 'print if (/test1/ and $p=2)||(/test2/ and $p=5)..not $p--' example.txt