NOM
readlink - Lire le contenu d’un lien symbolique
SYNOPSIS
#include <unistd.h>
ssize_t readlink(const char *path, char *buf, size_t bufsiz);
Exigences de macros de test de fonctionnalités pour la glibc (voir
feature_test_macros(7)) :
readlink() : _BSD_SOURCE || _XOPEN_SOURCE >= 500 ||
_POSIX_C_SOURCE >= 200112L
readlink() place le contenu du lien symbolique path dans le tampon buf,
dont la taille est bufsiz. readlink() n’ajoute pas de caractère NUL
dans le tampon buf. Il tronquera le contenu (à la longueur bufsiz) si
le tampon est trop petit pour recevoir les données.
VALEUR RENVOYÉE
S’il réussit, readlink() renvoie le nombre d’octets placés dans buf.
S’il échoue, il renvoie -1 et écrit errno en conséquence.
ERREURS
EACCES Un élément du chemin d’accès ne permet pas la recherche. (Voir
aussi path_resolution(7).)
EFAULT buf pointe en-dehors de l’espace d’adressage accessible.
EINVAL bufsiz n’est pas positif.
EINVAL Le fichier n’est pas un lien symbolique.
EIO Une erreur d’entrée-sortie est survenue lors de la lecture sur
le système de fichiers.
ELOOP Trop de liens symboliques ont été rencontrés en parcourant le
chemin.
ENAMETOOLONG
path ou l’un des composants de ce chemin d’accès est trop long.
ENOENT Le fichier indiqué 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.
CONFORMITÉ
BSD 4.4 (la fonction readlink() est apparue dans BSD 4.2),
POSIX.1-2001.
NOTES
Dans les versions de glibc jusqu’à 2.4 incluse, le type de retour de
readlink() était déclaré comme int. À présent, le type de retour est
déclaré comme ssize_t, ainsi que le prescrit POSIX.1-2001.
VOIR AUSSI
lstat(2), readlinkat(2), stat(2), symlink(2), path_resolution(7),
symlink(7)lstat(2), readlinkat(2), stat(2), symlink(2),
path_resolution(7)
COLOPHON
Cette page fait partie de la publication 3.23 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Julien Cristau <jcristau@debian.org> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».