Rechercher une page de manuel
write
Langue: fr
Version: 13 décembre 2001 (ubuntu - 16/08/07)
Section: 2 (Appels système)
NOM
write - Écrire dans un descripteur de fichierSYNOPSIS
#include <unistd.h>ssize_t write(int fd, const void *buf, size_t count);
DESCRIPTION
write écrit jusqu'à count() octets dans le fichier associé au descripteur fd depuis le tampon pointé par buf. POSIX réclame qu'une lecture avec read() effectuée après le retour d'une écriture avec write(), renvoie les nouvelles données. Notez que tous les systèmes de fichiers ne sont pas compatibles avec POSIX.VALEUR RENVOYÉE
write() renvoie le nombre d'octets écrits (0 signifiant aucune écriture), ou -1 s'il échoue, auquel cas errno contient le code d'erreur. Si count vaut zéro, et si le descripteur est associé à un fichier normal, 0 sera renvoyé sans effets de bord. Pour un fichier spécial, les résultats ne sont pas portables.ERREURS
- EAGAIN
- L'écriture est non-bloquante (attribut O_NONBLOCK du descripteur), et l'opération devrait bloquer.
- EBADF
- fd n'est pas un descripteur de fichier valide, ou n'est pas ouvert en écriture.
- EFAULT
- buf pointe en dehors de l'espace d'adressage accessible.
- EFBIG
- Tentative d'écrire un fichier dont la taille dépasse un maximum dépendant de l'implémentation ou du processus, ou d'écrire à une position qui dépasse le maximum autorisé.
- EINTR
- L'appel système a été interrompu par un signal avant d'avoir pu écrire quoi que ce soit.
- EINVAL
- fd correspond à un objet sur lequel il est impossible d'écrire. Ou bien le fichier a été ouvert avec l'attribut O_DIRECT, et soit l'adresse de buf, soit la valeur de count, soit la position actuelle dans le fichier ne sont pas alignées correctement.
- EIO
- Une erreur d'entrée-sortie bas niveau s'est produite durant la modification de l'inoeud.
- ENOSPC
- Le périphérique correspondant à fd n'a plus de place disponible.
- EPIPE
- fd est connecté à un tube (pipe) ou une socket dont l'autre extrémité est fermée. Quand ceci se produit, le processus écrivain reçoit un signal SIGPIPE. (Ainsi la valeur de retour de write n'est vue que si le programme intercepte, bloque ou ignore ce signal.
D'autres erreurs peuvent se produire suivant le type d'objet associé à fd.
CONFORMITÉ
SVr4, BSD 4.3, POSIX.1-2001.Sous SVr4, un appel write() peut être interrompu, et renvoyer EINTR à n'importe quel moment, pas seulement avant l'écriture des données.
NOTES
Une réussite de write() n'offre aucune garantie que les données se trouvent sur le disque. En fait, sur certaines implémentations erronées, elle ne garantit même pas que l'espace suffisant a été réservé pour les données. La seule manière d'être sûr de la réussite est d'invoquer fsync(2) après avoir écrit les données.VOIR AUSSI
close(2), fcntl(2), fsync(2), ioctl(2), lseek(2), open(2), pwrite(2), read(2), select(2), writev(2), fwrite(3)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.La traduction de cette page de manuel est basée sur les traductions disponibles sur http://manpagesfr.free.fr/, mais est gérée par l'équipe francophone de traduction de Debian au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction 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> ».
mois de février... car il n'y a que 28 jours.
-+- Coluche -+-
Contenus ©2006-2008 Benjamin Poulain
Design ©2006-2008 Maxime Vantorre