CHDIR(2)

BEZEICHNUNG
chdir, fchdir - aktuelles Arbeitsverzeichnis wechseln

ÜBERSICHT
#include <unistd.h>

int chdir(const char *path);
int fchdir(int fd);

Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

fchdir():
    _XOPEN_SOURCE >= 500
        || /* Seit Glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
        || /* Glibc bis zu einschließlich 2.19: */ _BSD_SOURCE

BESCHREIBUNG
chdir() ändert das aktuelle Verzeichnis in das durch path angegebene Verzeichnis.

fchdir() ist identisch mit chdir(), jedoch wird das Verzeichnis als geöffneter Dateideskriptor übergeben.

RÜCKGABEWERT
Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno entsprechend gesetzt.

FEHLER
Abhängig vom Dateisystem können andere Fehler auftreten und zurückgegeben werden. Die folgende Auflistung nennt lediglich die allgemeineren Fehler von chdir():

EACCES
    Dem Prozess ist nicht erlaubt, eine Komponente von path zu durchsuchen. (siehe auch path_resolution(8))

EFAULT
    path zeigt aus dem für Sie zugänglichen Adressraum heraus.

EIO Es ist ein E/A-Fehler (engl. I/O) aufgetreten.

ELOOP
    Bei der Auflösung von path wurden zu viele symbolische Links gefunden.

ENAMETOOLONG
    path ist zu lang.

ENOENT
    Das in path angegebene Verzeichnis existiert nicht.

ENOMEM
    Es war nicht genügend Kernelspeicher verfügbar.

ENOTDIR
    Eine Komponente von path ist kein Verzeichnis.

Die folgende Auflistung nennt allgemeine Fehler von fchdir():

EACCES
    Es ist nicht erlaubt, das durch fd angegebene Verzeichnis zu durchsuchen.

EBADF
    fd ist kein zulässiger Dateideskriptor.

KONFORM ZU
POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD.

ANMERKUNGEN
Das aktuelle Verzeichnis ist der Ausgangspunkt für die Auswertung relativer Pfadnamen. Diese beginnen nicht mit '/').

Ein mit fork(2) erzeugter Kind-Prozess erbt das aktuelle Verzeichnis seines Elternprozesses. Das aktuelle Verzeichnis wird von execve(2) nicht verändert.

SIEHE AUCH
chroot(2), getcwd(3), path_resolution(7)

KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.16 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Daniel Kobras <kobras@linux.de>, Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german@lists.debian.org>.