Provided by: manpages-fr-dev_2.45.1-1_all bug
 

NOM

        lseek - Positionner la tête de lecture/écriture dans un fichier
 

SYNOPSIS

        #include <sys/types.h>
        #include <unistd.h>
 
        off_t lseek(int fildes, off_t offset, int whence);
 

DESCRIPTION

        La  fonction  lseek()  place  la tête de lecture/écriture à la position
        offset dans le fichier associé au  descripteur  fildes  en  suivant  la
        directive whence ainsi :
 
        SEEK_SET
               La tête est placée à offset octets depuis le début du fichier.
 
        SEEK_CUR
               La tête de lecture/écriture est avancée de offset octets.
 
        SEEK_END
               La tête est placée à la fin du fichier plus offset octets.
 
        La fonction lseek() permet de placer la tête au‐delà de la fin actuelle
        du fichier (mais cela ne modifie pas la  taille  du  fichier).  Si  des
        données  sont  écrites  à  cet  emplacement,  une lecture ultérieure de
        l’espace intermédiaire (un  « trou »)  retournera  des  zéros  (« \0 »)
        jusqu’à ce que d’autres données y soient écrites.
        lseek(),  s’il réussit, renvoie le nouvel emplacement, mesuré en octets
        depuis le début du fichier. En cas d’échec,  la  valeur  (off_t)-1  est
        renvoyée, et errno contient le code d’erreur.
 

ERREURS

        EBADF  fildes n’est pas un descripteur de fichier ouvert.
 
        EINVAL whence  n’est  ni SEEK_SET, ni SEEK_CUR, ni SEEK_END, ou bien la
               position  demandée  serait  négative,  ou  après  la  fin   d’un
               périphérique.
 
        EOVERFLOW
               La  position résultante dans le fichier ne peut être représentée
               dans un off_t
 
        ESPIPE fildes est associé à un tube (pipe), une  socket,  ou  une  file
               FIFO.
 

CONFORMIT

        SVr4, BSD 4.3, POSIX.1-2001.
 

RESTRICTIONS

        Certains  périphériques  ne  permettent  pas  de positionnement direct,
        POSIX ne précise quels périphériques doivent gérer lseek().
 
        Restrictions spécifiques à Linux :  l’utilisation  de  lseek()  sur  un
        périphérique tty renvoie ESPIPE.
 

NOTES

        L’utilisation  du  mot  whence  ici ne correspond pas à une utilisation
        correcte en anglais, mais ce mot est conservé  pour  des  raisons  his‐
        toriques.
 
        Lors  de  la  conversion d’un ancien code, substituez les valeurs suiv‐
        antes :
 
        ancien   nouveau
        0        SEEK_SET
        1        SEEK_CUR
        2        SEEK_END
        L_SET    SEEK_SET
        L_INCR   SEEK_CUR
        L_XTND   SEEK_END
 
        SVr1-3 renvoie un long à la place d’un off_t, BSD renvoie un int.
 
        Notez que les descripteurs de fichiers dupliqués par dup(2) ou  fork(2)
        partagent  le  même  pointeur  de position. Ainsi le déplacement sur de
        tels fichiers peut conduire à des problèmes d’accès concurrents.
        dup(2), fork(2), open(2), fseek(3), lseek64(3), posix_fallocate(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, 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> ».