これでいいですか?

open(OPEN,"<data.txt");
read(OPEN,$data,-s OPEN);
close(OPEN);

my @line=split(/[\r\n]/,$data);


for ($count=0; $count<=$#line; $count++){
($number[$count],$number2[$count],$number3[$count],$number4[$count])=split( /,/,$line[$count]);
$incount{$line[$count]} = $number[$count];
}

@line = sort { $incount{$b} <=> $incount{$a} } @line;

for ($count=0; $count<=$#line; $count++){
$OUT .=$line[$count]."\n";
}

open( FH, ">data.txt" );
flock( FH, LOCK_EX );
print FH $OUT;
close FH;