从一个文件1匹配列表,从文件2中提取相应的行

Ism*_*aur 1 unix linux awk grep

假设我有一个引用列表,比如说file1.txt,它包含:

a
b
c 
d
Run Code Online (Sandbox Code Playgroud)

我有file2.txt,数据文件如下:

a 1 2 3
b 5 6 7
d 6 7 8
e 7 8 9
Run Code Online (Sandbox Code Playgroud)

和输出所需output.txt:

a 1 2 3
b 5 6 7
d 6 7 8
Run Code Online (Sandbox Code Playgroud)

我想将ID file1.txt与第一列匹配,file2.txt并打印整行(从中行file2.txt)output.txt

Chr*_*our 7

这是join专为:

$ join f1 f2
a 1 2 3
b 5 6 7
d 6 7 8
Run Code Online (Sandbox Code Playgroud)

如果您首先需要sort文件,那么:

join <(sort f1) <(sort f2)
Run Code Online (Sandbox Code Playgroud)