my %times; $times{$_} = (stat($file))[9] foreach @files; @files = sort { $times{$b} <=> $times{$a} } @files;