Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chroot(2)

getcwd(3C)

unistd(4)

chdir(2)                                                           chdir(2)

NAME
     chdir, fchdir - Aktuelles Verzeichnis ändern

SYNTAX
     #include <unistd.h>

     int chdir(const char *path);

     int fchdir(int fildes);

BESCHREIBUNG
     chdir() und fchdir() machen das Verzeichnis, auf das path oder fildes
     verweist, zum aktuellen Arbeitsverzeichnis, dem Startpunkt für Pfadsu-
     chen nach Pfadnamen, die nicht mit / beginnen. path zeigt auf den
     Pfadnamen eines Verzeichnisses. Das Argument fildes ist ein offener
     Dateideskriptor eines Verzeichnisses.

     Um ein Verzeichnis zum aktuellen zu machen, muß ein Prozeß Zugriffs-
     rechte zum Ausführen (Suchen) auf das Verzeichnis haben.

FEHLER
     Die folgenden Beschreibungen der Fehlercodes sind funktionsspezifisch.
     Eine allgemeingültige Beschreibung finden Sie in introprm2(2) bzw. in
     errno(5).

     chdir() ist erfolglos und das aktuelle Verzeichnis bleibt unverändert,
     wenn einer oder mehrere der nachstehenden Punkte zutreffen:

     EACCES        Für eine Komponente des Pfadnamens gibt es keine Durch-
                   suchberechtigung.

     EFAULT        path weist über den zugewiesenen Adreßraum des Prozesses
                   hinaus.

     EINTR         Ein Signal wurde während des Systemaufrufs chdir() abge-
                   fangen.

     EIO           Beim Lesen vom Dateisystem oder Schreiben auf dieses
                   trat ein Ein-/Ausgabefehler auf.

     ELOOP         Während der Auflösung von path wurden zu viele symboli-
                   sche Links angetroffen.

     ENAMETOOLONG  Die Länge des Arguments path ist größer als PATHMAX,
                   oder die Länge einer Komponente von path ist größer als
                   NAMEMAX.

     ENOTDIR       Eine Komponente des Pfadnamens ist kein Verzeichnis.

     ENOENT        Entweder eine Komponente des Pfads oder die Datei, auf
                   welche durch path verwiesen wurde, existiert nicht oder
                   ist ein leerer Pfadname.



Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

chdir(2)                                                           chdir(2)

     EMULTIHOP     Die Komponenten von path erfordern den Sprung auf meh-
                   rere ferne Rechner.

     Die Funktion chdir() kann bei folgenden Bedingungen fehlschlagen:

     ENAMETOOLONG  Die Auflösung des Pfadnamens eines symbolischen Links
                   hat ein Zwischenergebnis erzeugt, dessen Länge PATHMAX
                   überschreitet.

     fchdir() ist erfolglos und das aktuelle Verzeichnis bleibt unverän-
     dert, wenn einer oder mehrere der nachstehenden Punkte zutreffen:

     EACCES        Für fildes gibt es keine Durchsuchberechtigung.

     EBADF         fildes ist kein Dateideskriptor für eine offene Datei.

     EINTR         Ein Signal wurde während des Systemaufrufs fchdir()
                   abgefangen.

     EIO           Beim Lesen vom Dateisystem oder Schreiben auf dieses
                   trat ein Ein-/Ausgabefehler auf.

     ENOLINK       fildes weist auf einen fernen Rechner, und die Verbin-
                   dung zu diesem Rechner ist nicht mehr aktiv.

     ENOTDIR       Der offene Dateideskriptor zeigt nicht auf ein Verzeich-
                   nis.

ERGEBNIS
     Nach erfolgreicher Beendigung wird 0 zurückgegeben. Andernfalls wird
     -1 zurückgegeben, und errno wird zur Anzeige des Fehlers gesetzt.

SIEHE AUCH
     chroot(2), getcwd(3C), unistd(4).




















Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026