chdir, fchdir - Changer le répertoire courant
Bibliothèque C standard (libc, -lc)
#include <unistd.h>
int chdir(const char *path);
int fchdir(int fd);
Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :
fchdir() :
_XOPEN_SOURCE >= 500
|| /* Depuis la glibc 2.12 : */ _POSIX_C_SOURCE >= 200809L
|| /* Jusqu’à la glibc 2.19 comprise : */ _BSD_SOURCE
chdir() remplace le répertoire de travail courant du processus appelant 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.
En cas de succès, zéro est renvoyé. En cas d’erreur, -1 est renvoyé et errno est définie pour préciser l’erreur.
Suivant le type de système de fichiers, plusieurs erreurs peuvent être renvoyées, les plus courantes pour chdir() sont les suivantes :
EACCES |
L’accès n’est pas autorisé sur un élément du chemin path. (Consultez aussi path_resolution(7).) |
||
EFAULT |
path pointe en dehors de l’espace d’adressage accessible. |
||
EIO |
Une erreur d’entrée-sortie s’est produite. |
||
ELOOP |
path contient une référence circulaire (à travers un lien symbolique) |
ENAMETOOLONG
path est trop long.
ENOENT |
Le répertoire spécifié dans path n’existe pas. |
||
ENOMEM |
La mémoire disponible du noyau n’était pas suffisante. |
ENOTDIR
Un élément du chemin d’accès path n’est pas un répertoire.
Les erreurs courantes pour fchdir() sont :
EACCES |
Le répertoire ouvert sur fd n’autorise pas le parcours. |
||
EBADF |
fd n’est pas un descripteur de fichier valable. |
ENOTDIR
fd ne se réfère pas à un répertoire.
POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD.
Le répertoire de travail est le point de départ pour l’interprétation des chemins relatifs (qui ne commencent pas par « / »).
Un processus fils créé avec fork(2) hérite du répertoire de travail courant de son père. Le répertoire de travail courant n’est pas modifié par un execve(2).
chroot(2), getcwd(3), path_resolution(7)
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan DOT rafin AT laposte DOT net>, Thierry Vignaud <tvignaud AT mandriva DOT com>, François Micaux, Alain Portal <aportal AT univ-montp2 DOT fr>, Jean-Philippe Guérard <fevrier AT tigreraye DOT org>, Jean-Luc Coulon (f5ibh) <jean-luc DOT coulon AT wanadoo DOT fr>, Julien Cristau <jcristau AT debian DOT org>, Thomas Huriaux <thomas DOT huriaux AT gmail DOT com>, Nicolas François <nicolas DOT francois AT centraliens DOT net>, Florentin Duneau <fduneau AT gmail DOT com>, Simon Paillard <simon DOT paillard AT resel DOT enst-bretagne DOT fr>, Denis Barbier <barbier AT debian DOT org>, David Prévot <david AT tilapin DOT org> et Jean-Philippe MENGUAL <jpmengual AT debian DOT org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french.