如何使用 grep 查找匹配之前 * 和 * 之后的上下文行?

fus*_*ser -1 linux grep command-line-arguments

我需要立即找出并输出模式之前的 10 行和模式之后的 20 行。我究竟做错了什么?我没有得到正确的结果。

grep -B 10 "next" file1.txt | grep -A 20 "next" file1.txt
Run Code Online (Sandbox Code Playgroud)

Tod*_*obs 5

我需要立即找出并输出模式之前的 10 行和模式之后的 20 行。

您将无法通过管道获得正确的结果,因为在管道输出后您将没有正确的上下文行。相反,请将所有上下文要求放入同一组命令行参数中。例如:

grep -B 10 -A 20 "next" file1.txt
Run Code Online (Sandbox Code Playgroud)