我有一组字符串。可以说,(list.txt)它们是:
1abc_A
2pqr_X
4ghi_Z
我还有一个文本文件 (test.txt),如下所示:
1abc_A 2pqr_X 0.55 0.87
2pqr_X 3def_Y 0.21 0.24
4ghi_Z 1abc_A 0.98 0.75
2pqr_X 4ghi_Z 0.99 0.76
2pqr_X 2pqr_X 1.00 1.00
我只需要从 test.txt 中获取那些行,以便第 1 列和第 2 列中的字符串属于 list.txt 中包含的字符串
在这种情况下,我的输出如下:
1abc_A 2pqr_X 0.55 0.87
4ghi_Z 1abc_A 0.98 0.75
2pqr_X 4ghi_Z 0.99 0.76
2pqr_X 2pqr_X 1.00 1.00
即 test.txt 中除第 2 行外的所有行,因为第 2 行中的第 2 列,3def_Y 不在 list.txt 中指定的字符串列表中
我怎样才能在 awk 中做到这一点?请注意,test.txt 是一个大文本文件,将近 7GB。
解决这个问题的最快方法是什么?请帮忙 。