仅当pattern1和pattern2在连续行中匹配时如何grep

GB *_*ran 5 grep

我有一个如下文件:

city-italy
good food
bad climate
-
city-india
bad food
normal climate
-
city-brussel
normal dressing
stylish cookings
good food
-
Run Code Online (Sandbox Code Playgroud)

问-我想用grep cityfood,为此,"食物"是"坏".

例如 - 对于上面的问题,我需要一个grep命令来获得如下所示的答案

city-india
bad food
Run Code Online (Sandbox Code Playgroud)

请帮助我,如果两个并行成功,我将如何获得模式1和模式2 grepped.

我的意思是两个模式应该匹配,它应该在下一行grep.

Oli*_*ews 6

您可以使用管道 - grep -A1 city <filename> | grep -B1 "bad food"cat filename | grep -A1 city | grep -B1 "bad food"(或管道的任何其他流源)