Votre IP: 38.107.179.241 
  
 
Google
 
Accueil e-mail Linux
Linux
Perl
Perl
C
Langage C
Dico
Dictionnaire
Biblio liens
Bibliothèque de liens
Index articles
Index articles
 

Date création : 27-03-2008 20:23:44

Linux  Vous êtes dans : GNU/Linux Astuces / Pages man [Section2 - Appels système]


LSEEK

 

Index

  1. NOM
  2. SYNOPSIS
  3. DESCRIPTION
  4. VALEUR RENVOYÉE
  5. ERREURS
  6. CONFORMITÉ
  7. RESTRICTIONS
  8. NOTES
  9. VOIR AUSSI
  10. TRADUCTION

 

NOMIndex

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

SYNOPSISIndex

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

DESCRIPTIONIndex

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 (« rs0 ») jusqu'à ce que d'autres données y soient écrites.  

VALEUR RENVOYÉEIndex

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.  

ERREURSIndex

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ÉIndex

SVr4, BSD 4.3, POSIX.1-2001.  

RESTRICTIONSIndex

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.  

NOTESIndex

L'utilisation du mot whence ici ne correspond pas à une utilisation correcte en anglais, mais ce mot est conservé pour des raisons historiques.
Lors de la conversion d'un ancien code, substituez les valeurs suivantes :
anciennouveau
0SEEK_SET
1SEEK_CUR
2SEEK_END
L_SETSEEK_SET
L_INCRSEEK_CUR
L_XTNDSEEK_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.  

VOIR AUSSIIndex

dup(2), fork(2), open(2), fseek(3), lseek64(3), posix_fallocate(3)  

TRADUCTIONIndex

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> ».


Création : octobre 2007  © Tous droits réservés 2007 linux-perl-c
Valid HTML 4.01 TransitionalValid CSS