my $current_rec = ''; my $current_count = 0; my($proto, $dest_ip, $src_ip, $dest_port, $src_port, $drp_packets, $country, $rec); while(){ ($proto, $dest_ip, $src_ip, $dest_port, $src_port, $drp_packets, $country) = split' '; $rec = join "\t", $proto, $dest_ip, $src_ip, $dest_port, $src_port; if ( $rec eq $current_rec ) { $current_count += $drp_packets; } else { print OUTFILE $current_rec, "\t", $current_count; $current_rec = $rec; $current_count = $drp_packets; } } # now print any hanging rec print OUTFILE $current_rec, "\t", $current_count if $rec eq $current_rec;