![ein Kapitel weiter](../weiter.gif)
Selbst für Fehlerbehandlungen gibt es in Perl reservierte Variablen.....
$? - Fehlerstatus des system()-Aufrufs
$! - Numerische Fehlerkontex errno
$@ - eval()-Fehler (wurde bereits im Kapitel eval durchgenommen)
Sehen wir uns auch hierzu ein Beispiel an....
#!/usr/bin/perl -w
$system1="lds -l";
system($system1);
print $? , "\n"; #-1
print $! , "\n"; #Datei oder Verzeichnis nicht gefunden
$!=0;
system("echo Hallo Welt");
print $? , "\n"; #0
print $! , "\n"; #keine Ausgabe
Mit der reservierten Variablen $? geben wir den Rückgabestatus
von einem system-Aufruf zurück. Und dieser ist wie in C bei
Erfolg 0 und bei Fehler -1. Es wird hier auch auf die C-Funktion
zurückgegriffen.
Die Variable $! gibt den Fehlercode zurück der in errno steht.
Mehr dazu können sie unter man errno nachlesen. Auch hier gilt
wie in C, errno nach jeder Verwendung wieder auf 0 zurückzusetzen,
da sonst der alte Wert in errno stehen bleiben könnte obwohl kein
Fehler aufgetreten ist.
![ein Kapitel weiter](../weiter.gif)
© 2001,2002 Jürgen Wolf
|