我有两个文件:
文件1
1
2
3
4
5
file2的
a 0 1 h f
b 0 3 h f
c 0 8 h f
d 0 5 h f
我想将file1与file2的column3进行比较,然后像这样打印整行file2
a 0 1 h f
b 0 3 h f
d 0 5 h f
我尝试使用awk
,但我正在打印column3:
awk 'NR == FNR {f2[$3]=$1; next} $1 in f2{print f2[$1],$1}' file2 file1
如何从file2打印整行?
答案 0 :(得分:3)
如果先给file1
:
$ awk 'NR==FNR{a[$1];next}$3 in a' file1 file2
a 0 1 h f
b 0 3 h f
d 0 5 h f
这样,如果字段3中的值位于file2
,则可以在file1
中轻松打印整行。 awk
中的默认值为{print $0}
,因此可以从$3 in a{print $0}
中省略。