Errno

use Errno;
unless (open(FH, $patbname)) {
    if ($!{ENOENT}) { # Hierfür ist kein Import notwendig!
       warn "$pathname existiert nicht.\n";
    }
    eise {
         warn "Konnte '$pathname' nicht öffnen: $!";
    }
}

use Errno qw(EINTR EIO :POSIX);
if ($! == ENOENT) { .... }

Das Errno-Modul macht die symbolischen Namen der Fehlerstatuswerte verfügbar, die beim Fehlschlagen eines Systemaufrufs gesetzt werden. Standardmäßig werden diese aber nicht exportiert. Das Modul besitzt ein einziges Export-Tag (":POSIX"), das nur die Symbole exportiert, die im POSIX-Standard 1003-1 definiert sind. Das Modul haucht der globalen Variablen %! mittels tie auch etwas Magie ein. Sie können den %!-Hash mit jedem gültigen errno-Wert Ihres Systems indizieren, sind also nicht auf POSIX ...

Get Programmieren mit Perl now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.