in reply to File date
There are a few problems. First of all, your $file will contain the file name only, so you need to append the $dir to it. Just try it:
#!/usr/bin/perl use v5.14; use File::stat; my $dir = '/tmp/'; opendir(DIR, $dir) or die $!; while (my $file = readdir(DIR)) { next if ($file =~ m/^\./); say "Good idea" if (stat($dir.$file)); die "Bad idea" if (not defined stat($file)); }
Next one: if you want to use File::stat, you should use (stat $dir.$file)->9; instead of the way you use it now.
And the last thing: you will need to add 1900 to the year, unless you want to see 114 instead of 2014. A working example:
#!/usr/bin/perl use v5.14; use File::stat; my $dir = '/tmp/'; opendir(DIR, $dir) or die $!; while (my $file = readdir(DIR)) { next if ($file =~ m/^\./); my $mtime = (stat $dir.$file)->[9]; my($sec,$min,$hour,$mday,$mon,$year) = localtime($mtime); $year += 1900; say "File: $file, Mtime: $mday/$mon/$year"; }
regards,
Luke Jefferson
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: File date
by natol44 (Sexton) on Sep 19, 2014 at 16:00 UTC |