Scroll to navigation

CHDIR(2) Podręcznik programisty Linuksa CHDIR(2)

NAZWA

chdir, fchdir - zmiana katalogu roboczego

SKŁADNIA

#include <unistd.h>

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

OPIS

chdir zmienia katalog bieżący na katalog podany w path.

fchdir jest identyczne jak chdir, lecz katalog jest podawany jako deskryptor otwartego pliku.

WARTOŚĆ ZWRACANA

Po pomyślnym zakończeniu zwracane jest zero. W wypadku błędu zwracane jest -1 i odpowiednio ustawiane errno.

BŁĘDY

Dla niektórych systemów plików mogą być zwracane inne błędy niż opisane poniżej. Najogólniejsze błędy chdir to:

path wskazuje poza dostępną dla użytkownika przestrzeń adresową.
path jest zbyt długie.
Plik nie istnieje.
Brak pamięci jądra.
Składnik ścieżki path. nie jest katalogiem.
Brak praw do przeszukiwania dla składnika ścieżki path.
Podczas rozwiązywania path napotkano zbyt wiele dowiązań symbolicznych.
Wystąpił błąd wejścia-wyjścia.

Ogólne błędy fchdir to:

fd Nie jest prawidłowym deskryptorem pliku.
Brak praw do przeszukiwania katalogu otwartego przez deskryptor fd.

UWAGI

Prototyp funkcji fchdir jest dostępny tylko jeżeli zdefiniowano _BSD_SOURCE (bezpośrednio, albo pośrednio - nie definiując _POSIX_SOURCE czy kompilując z włączoną flagą -ansi).

ZGODNE Z

Funkcja chdir jest zgodna z SVr4, SVID, POSIX, X/OPEN, 4.4BSD. SVr4 dokumentuje dodatkowe błędy EINTR, ENOLINK i EMULTIHOP, lecz nie zawiera ENOMEM. POSIX.1 nie zawiera błędów ENOMEM, ELOOP. X/OPEN nie zawiera błędów EFAULT, ENOMEM i EIO.

Funkcja fchdir jest zgodna z SVr4, 4.4BSD oraz X/OPEN. SVr4 dokumentuje dodatkowe błędy EIO, EINTR i ENOLINK. X/OPEN dokumentuje dodatkowe błędy EINTR i EIO.

ZOBACZ TAKŻE

getcwd(3), chroot(2)

1997-08-21 Linux 2.0.30