WRITE(2)           Manuel du programmeur Linux           WRITE(2)


NOM
       write - Ecrire dans un descripteur de fichier.

SYNOPSIS
       #include <unistd.h>

       ssize_t write(int fd, const char *buf, size_t count);

DESCRIPTION
       write  écrit  jusqu'à count octets dans le fichier associé
       au descripteur fd depuis le buffer 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 ecriture), ou -1 s'il échoue, auquel cas errno con­
       tient 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
       EBADF  fd n'est pas un descripteur de fichier  valide,  ou
              n'est pas ouvert en écriture.

       EINVAL fd correspond à un objet ne permettant pas l'écrit­
              ure.

       EFAULT buf pointe en dehors de l'espace d'adressage acces­
              sible.

       EPIPE  fd est connecté à un tube (pipe) ou une socket dont
              l'autre extrémité est fermée. Quand  ceci  se  pro­
              duit,  le  processus écrivain reçoit un signal SIG­
              PIPE .  S'il intercepte, bloque ou ignore  ce  sig­
              nal, EPIPE est renvoyé.

       EAGAIN L'écriture  est  non-bloquante (attribut O_NONBLOCK
              du descripteur), et il n'y a plus de place dans  le
              tube  ou la socket correspondant à fd pour y écrire
              immédiatement.

       EINTR  L'appel système a  été  interrompu  par  un  signal
              avant d'avoir pu écrire quoique ce soit.

       ENOSPC Le  périphérique  correspondant  à  fd  n'a plus de
              place disponible.

       EIO    Une  erreur  d'entrée/sortie   bas   niveau   s'est



Linux                     15 Avril 1997                         1





WRITE(2)           Manuel du programmeur Linux           WRITE(2)


              produite durant la modification de l'i-noeud.

       D'autres  erreurs  peuvent  se  produire  suivant  le type
       d'objet associé à fd.

CONFORMITÉ
       SVr4, SVID, POSIX, X/OPEN, BSD 4.3.   SVr4  mentionne  des
       conditions   d'erreur   supplémentaires   EDEADLK,  EFBIG,
       ENOLCK, ENOLNK, ENOSR,  ENXIO,  EPIPE,  et  ERANGE.   Sous
       SVr4,  un  appel write() peut être interrompu, et renvoyer
       EINTR à n'importe quel moment, pas seulement avant l'écri­
       ture des données.

VOIR AUSSI
       open(2), read(2), fcntl(2), close(2), lseek(2), select(2),
       ioctl(2), fwrite(3).


TRADUCTION
       Christophe Blaess, 1997.





































Linux                     15 Avril 1997                         2