#### New sort (which works!) with first 10 records NOT extracted foreach my $tmp (keys %IND) { my @lines; open(FILE, "+< tmp/$tmp.dat") or die "file:$tmp $!"; while () { chomp; my @line = split(','); push(@lines, \@line); } @lines = sort { $a->[0] <=> $b->[0]} @lines; foreach my $line (@lines) { print join(",", @{$line}) . "\n"; } }