Com awk
, tente:
awk '{a[$1]=($1 in a)?a[$1]" "$2:$2};END{for(i in a)print i,a[i]}' file1 file2
Para arquivos grandes, você deve usar a abordagem join
em vez de awk
, desde quando a abordagem awk
armazenará todo o conteúdo dos arquivos na memória antes de imprimir.