提取包含模式+下一行的行

提取包含模式+下一行的行

我有两个文件:一个包含 ID 列表(文件 A),另一个包含 ID 列表及其相应的文本(始终位于下一行)(文件 B)。

文件A:

>161@1983
>947@2009
>59@2002
>5933@2005

文件B:

>161@1983
text
>8899@2007
more text
>6000@2017
more and more text
>5933@2005
idk
>31@2004
you get the idea
etc...

如何从文件 B 中仅提取与文件 A 中的 ID 相匹配的 ID 及其相应文本?

预期输出:

>161@1983
text
>5933@2005
idk

谢谢

答案1

使用 GNU grep、FreeBSD grep:

grep -A1 -Ff fileA fileB

相关内容