Você pode fazer uso de NR e FNR no awk.
awk 'FNR==NR { _a[FNR]=$3;} NR!=FNR { $4 += _a[FNR]; print; }' file1 file2
Eu tenho dois arquivos como este:
Arquivo1:
-54.005 -67.405 0.1 -54.05 -68.7833 0.2 -54.05 -68.7333 0.3
Arquivo2:
-54.005 -67.4050 70 12.7 -54.05 -68.7833 167 12.5 -54.05 -68.7333 205 12.6
Eu gostaria de obter um arquivo que soma a coluna 3 de file1
com a coluna 4 de file2
com a seguinte saída:
-54.005 -67.4050 70 12.8 -54.05 -68.7833 167 12.7 -54.05 -68.7333 205 12.9
Eu tentei com o seguinte comando:
cat file1 | awk '{n=$3; getline <"file2"; print "" $1,$2,$3,n+$4}' > output.txt
mas não teve sucesso e não encontrei este tipo de resposta neste site.
Você pode fazer uso de NR e FNR no awk.
awk 'FNR==NR { _a[FNR]=$3;} NR!=FNR { $4 += _a[FNR]; print; }' file1 file2
Existe uma ferramenta que pode mesclar dois arquivos em um: mesclando arquivos de texto em um
paste file1 file2 | awk '{ print $3 + $13; }'
Adicione outras colunas a isso, mas observe que as colunas no arquivo 2 começam com $ 10.
Tags text-processing awk