Ausnahmenbehandlungen II

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

testpasswd5.pl
if (@ARGV > 0) {
   my $passwd_file = shift;
   eval {
      pw_init($passwd_file);
   };
   if ($@) {
      warn "$cmdname: was not able to open $passwd_file:\n" .
         "$@trying default...\n";
      pw_init();
   }
}

*Mit eval können beliebige Ausführungsfehler abgefangen werden. Geht irgendetwas schief, wird die zugehörige Fehlermeldung in $@ abgelegt.
 
*Damit ist es möglich, andere Fehlermeldungen zu erzeugen oder Ersatzstrategien zu verfolgen.
 
doolin$ perl testpasswd5.pl borchert /tmp/blubber
testpasswd5.pl: was not able to open /tmp/blubber:
Unable to read from /tmp/blubber: No such file or directory
 at testpasswd5.pl line 14
trying default...
Name:        Andreas F. Borchert
UID:         120
GID:         0
doolin$

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1996 - 2003 Andreas Borchert, in HTML konvertiert am 01.10.2003