You can use the module File::Find to traverse the directory structure and use stat to find the age of the file. The example below sets up a hash data structure that contains the name of the file and the last accessed modified time. The application then compares the values in the hash and prints out the newest file.
#!/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;
«Rich36»