Nom
chdir, fchdir - Changer le répertoire courant.
Synopsis
#include <unistd.h>
int chdir(const char *path);
int fchdir(int fd);
Description
chdir remplace le répertoire courant par celui indiqué dans le chemin path.
fchdir est identique à chdir, sauf que le répertoire cible est fourni sous forme de descripteur de fichier.
Valeur Renvoyée
chdir et fchdir renvoient 0 s'ils réussissent, ou -1 s'ils échouent, auquel cas errno contient le code d'erreur.
Erreurs
Suivant le type de système de fichiers, plusieurs erreurs peuvent être renvoyées, les plus courantes pour chdir sont les suivantes :
EFAULT
    path pointe en dehors de l'espace d'adressage accessible. 
ENAMETOOLONG
    path est trop long. 
ENOENT
    Le fichier n'existe pas. 
ENOMEM
    Pas assez de mémoire pour le noyau. 
ENOTDIR
    Un élément du chemin d'accès n'est pas un répertoire. 
EACCES
    L'accès n'est pas autorisé sur un élément du chemin. 
ELOOP
    path contient des références circulaires (à travers un lien symbolique) EIO Erreur générique d'entrée/sortie. 
Les erreurs courantes pour fchdir sont :
EBADF
    fd n'est pas un descripteur de fichier valide. 
EACCES
    Le répertoire ouvert sur fd n'autorise pas le parcours. 
Conformité
L'appel système chdir est compatible avec SVr4, SVID, POSIX, X/OPEN, et 4.4BSD. SVr4 décrit les conditions d'erreur supplémentaires EINTR, ENOLINK, et EMULTIHOP mais n'a pas d'erreur ENOMEM. POSIX.1 ne contient pas d'erreur ENOMEM ni ELOOP. X/OPEN ne decrit pas les erreurs EFAULT, ENOMEM ni EIO.
L'appel système fchdir est compatible avec SVr4, 4.4BSD et X/OPEN. SVr4 ajoute les conditions d'erreur EIO, EINTR, et ENOLINK. X/OPEN ajoute EINTR et EIO.
Voir Aussi
getcwd(3) , chroot(2)
Traduction
Christophe Blaess, 1997. 
			
		
 
	
Partager