私は以下のように持っFile1てFile2います。同様の質問を見つけましたが、まったく同じではありません。
File1行を の入力として使用しgrep、 の 1 列目を抽出しますFile2。以下のおもちゃの例では、column2 が にFile2等しい場合、aまたはbに書き込み1ますFile_ab。
これまでのところ、私は二重ループを使用しており、推定時間は 4 日です。私は次のようなものを得たいと思っていました:cat File1 | xargs -P 12 -exec grep "$1\|$2" File2 > File_$1$2.txt
しかし、構文を正しくすることができませんでした。greps条件と並行して12 を実行しようとしていORます。
File1
a b
c d
File2
1 a
2 b
3 c
1 d
4 a
5 e
6 d
必要な出力は、File_ab と File_cd の 2 つのファイルです。
File_ab
1
2
4
File_cd
1
3
6
注: MyFile1は 25K 行で、File210Mln 行です。