use strict; use warnings; my $sampleData = <)) { my ($tn, $err, $ent, $es, $coid) = split /\|/, $line; $esList{$es} = $line if ! exists $esList{$es}; } close $inFile; print $esList{$_} for sort {$a <=> $b} keys %esList; #### 163|1|523|30|6 17|5|176|1288|1387 152|1|170|1845|473