Ausnahmenbehandlungen II

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

testpasswd5.pl
if (@ARGV > 0) {
   my $passwd = shift;
   eval {
      pwinit($passwd);
   };
   if ($@) {
      warn "Unable to open $passwd. Trying default.\n";
      pwinit("/etc/passwd");
   }
}

*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.
 
theseus$ testpasswd5.pl root /no/such/file
Unable to open /no/such/file. Trying default.
Name:        Super-User
UID:         0
GID:         1
theseus$

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 2000 Ingo Melzer, in HTML konvertiert am 10.11.2000