Вы можете передать объединенные файлы в awk
дважды, в первый раз ( NR == FNR
) для вычисления сумма
третьего столбца ( $ 3
) во всех файлах и второй раз для замены существующих значений итоговым значением:
awk 'NR==FNR{sum+=$3;next}; {$3=sum; print}' <(cat file1 file2...fileN) \
<(cat file1 file2...fileN) > result.txt
Оказалось, что это проблема приведения, поэтому я добавил 0 в столбцы, чтобы убедиться, что оба они обрабатываются awk одинаково.
С помощью:https://stackoverflow.com/questions/5808971/casting-to-int-in-awk
Это сработало..
awk -F, 'NR==FNR{c[$1+0,$2,$3]++;next};c[$120002+0,$120003,$120004] > 0' small.csv large.csv > output.csv