文字列のセットがあります。たとえば、(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
1列目と2列目の文字列がlist.txtに含まれる文字列に属するように、test.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
つまり、2行目を除くtest.txtのすべての行、2行目の列2であるため、3def_Yはlist.txtで指定された文字列のリストに含まれていません。
どうすればawkでこれを行うことができますか?test.txtは約7GBの大きなテキストファイルであることに注意してください。
この問題を解決するための最速の方法は何ですか?助けてください 。