Tente:
$ awk 'FNR==NR{a[$1]=OFS $2;next} {print $0 a[$1]}' file2 file1
cow 192,231,bar
aaaaa
brown 149,456,foo
bbbbb
often 427,541,top
ccccc
farts 81,2007,tip
ddddd
Como funciona
-
FNR==NR{a[$1]=OFS $2;next}
Durante a leitura de
file2
(o primeiro arquivo na linha de comando), adicionamos uma entrada à matriz associativaa
sob a chave do primeiro campo,$1
. A entrada consiste no separador do campo de saída,OFS
, seguido pelo segundo campo,$2
. Em seguida, ignoramos o restante dos comandos e pulamos para começar de novo na linhanext
. -
imprimir
$0 a[$1]
Durante a leitura de
file1
(o segundo arquivo na linha de comando), imprimimos cada linha seguida por qualquer que seja o valor da matriza
para a linha.