2つの大きなファイルがあります。2つの大きなファイルで一致するIDを見つける
FILE1このフォーマット160万行を持っています問題は、すべて等しいID Sを検索し、それらを保存することであるid:hash
:id:email
FILE2この形式と45万行を有します3番目のファイルには、形式:email:hash
試してみてください:
awk -F':' 'NR==FNR{a[$1]=$2;next} {print a[$1]":"$2}' test1.in test2.in > res.in
しかし、それは:(
例FILE1を働いていない:
9305718:[email protected]
59287478:[email protected]
FILE2:
21367509:e90100b1b668142ad33e58c17a614696ec04474c
9305718:d63fff1d21e1a04c066824dd2f83f3aeaa0edf6e
望ましい結果:
GNUで
160メートルレコードはおそらくメモリに収まらないでしょう。これらのファイルはIDでソートされていますか?もしそうなら、 'join'はこのタスクのより良いツールです。 – karakfa
はい、ソートされています。しかし、すべてのIDが2番目のファイルにあるわけではありませんが、これは問題ではありませんか? –
Example * file2 *データはソートされていません。それはすべきでしょうか? @ karakfa; – agc