Идея правильная, но для такого требования вы создаете хеш-ключ в качестве значений, кроме последнего столбца, и используете этот ключ для суммирования значений в последнем столбце. После обработки всех строк в предложении END
мы печатаем суммированные значения
awk '
BEGIN {FS=OFS="|"} {
hashKey = ""
for(i=1;i<=(NF-1); i++) {
hashKey = ( hashKey ? (hashKey FS $i):$i )
}
total[hashKey]+=$NF
}
END { for ( j in total ) print j, total[j] }
' file
Возникло множество проблем