Em uma pasta collection
, tenho os seguintes arquivos:
fberry.txt lberry.txt
fgag.txt lgag.txt
fred.txt lred.txt
ftea.txt ltea.txt
fluck.txt lluck.txt
Podemos descobrir que esses arquivos podem ser divididos em dois tipos: um começa com f
e o outro começa com l
. E cada dois arquivos compartilham um mesmo nome (exceto a primeira letra), por exemplo: Em fberry.txt
e lberry.txt
, berry.txt
é o mesmo. Nesses dois arquivos pareados, a primeira coluna de cada arquivo é a mesma, quero mesclar esses dois arquivos (as duas primeiras colunas de lberry.txt
e a terceira coluna de fberry.txt
) com base na mesma coluna.
Eu uso o seguinte código:
cd ~/collection
awk 'NR==FNR {h[$1]=$3; next} {print $1,$2,h[$1]}' fberry.txt lberry.txt > tberry.txt
Ele pode produzir o resultado que eu quero, mas eu não sei como lidar com todos esses arquivos emparelhados, caso contrário, eu preciso escrever 5 códigos como este, e se houver mais de 100 arquivos, será um desastre .
Meu resultado esperado é obter cinco novos arquivos: tberry.txt
, tgag.txt
, tred.txt
, ttea.txt
e tluck.txt
.Obrigado.