my %calhash; my $key = ""; my $value = ""; while () { my ($key, $value) = split(/;/, $_); chomp; $calhash{$key} = $key; } foreach $key (sort {$b cmp $a} keys %calhash) { print TESTFILE "$calhash{$key};$value\n"; }