http://www.perlmonks.org?node_id=1011454


in reply to stat : error handling

The o/s error is recorded in $!.

$ perl -E ' > @stats = stat q{notThere} or die $!;' No such file or directory at -e line 2. $

Cheers,

JohnGG

Replies are listed 'Best First'.
Re^2: stat : error handling
by gepebril69 (Scribe) on Jan 03, 2013 at 14:08 UTC

    Thx Johngg

    I stick to the non-die solutions. They are not real handy in 24/7 operational systems.... ;)

      Well, you don’t need to use die to get information from $!:

      #! perl use Modern::Perl; for my $file ('465_SoPW.pl', 'Non-Existent.txt') { if (my @stats = stat $file) { say "File '$file' last modified: ", $stats[9]; } else { say "stat failed for file '$file': $!"; } }

      Output (on my machine):

      0:17 >perl 466_SoPW.pl File '465_SoPW.pl' last modified: 1357188675 stat failed for file 'Non-Existent.txt': No such file or directory 0:17 >

      Hope that helps,

      Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,

      The solution was $! and, as Athanasius points out, die had nothing to do with it other than to illustrate that the variable is available ;-)

      Cheers,

      JohnGG