#!/usr/bin/perl use strict; use File::Find; use vars qw/%files/; sub findNewestFiles { my $element = $File::Find::name; return if (!-f $element); $files{$element} = (stat($element))[9]; } ####################################################### # MAIN ####################################################### my $dir = '/home/users/rich36'; find(\&findNewestFiles, $dir); my $newestfile; my $time = 0; while(my ($k, $v) = each(%files)) { if ($v > $time) { $newestfile = $k; $time = $v; } } $time = localtime($time); print "The newest file is $newestfile : $time\n"; exit;