输入1:
1 s1
100 s100
90 s90
输入2:
a 1
b 3
c 7
d 100
e 101
f 90
输出:
a 1
d 100
f 90
我知道 join
可以做到这一点,但它需要 (1) 对这些公共(public)字段进行排序 (2) 在加入后,我需要从 input1 中删除第二列。有没有人对此有更好的解决方案。
最佳答案
这是使用 awk
的一种方法:
awk 'FNR==NR { a[$1]; next } $2 in a' file1 file2
结果:
a 1
d 100
f 90
关于linux - 使用一个文件从另一个文件中提取指定的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13834218/