Adding matching field

I have a flat file
test.log

red,5,,,,,
green,7,,,,,
blue,4,,,,,
red,8,,,,,
green,9,,,,,

How i get a a result:

blue,4,,,,,
green,16,,,,,
red,13,,,,,

Thanks

Something like this:

awk -F, 'END {
  for (_0_ in _0)
    print _0[_0_]
  }
{
  $2 = _2[$1] += $2
  _0[$1] = $0
  }' OFS=, infile
1 Like
nawk -F, '{a[$1]+=$2;fld=NF}END{for(i in a) {printf("%s%c%s",i,OFS,a);$(fld-2)=OFS;print}}' OFS=, myFile