TRUNCATE(2)        Manuel du programmeur Linux        TRUNCATE(2)


NOM
       truncate,  ftruncate  - Tronquer un fichier à une longueur
       donnée.

SYNOPSIS
       #include <unistd.h>

       int truncate(const char *path, off_t length);
       int ftruncate(int fd, off_t length);

DESCRIPTION
       Truncate tronque le fichier référencé par path ou  par  le
       descripteur fd à une longueur maximale de length octets.

       Si le fichier était plus long, les données supplémentaires
       sont perdues.  Avec ftruncate, le fichier doit être ouvert
       en écriture.

VALEUR RENVOYÉE
       truncate, et ftruncate renvoient 0 s'ils réussissent et -1
       s'ils  échouent,  auquel  cas  errno  contient   le   code
       d'erreur.

ERREURS
       Pour truncate:

       ENOTDIR un composant du chemin d'accès n'est pas un réper­
               toire

       EINVAL  Un mauvais caractère dans le chemin d'accès.

       ENAMETOOLONG
               Un composant du chemin dépasse 255  caractères  ou
               le chemin complet dépasse 1023 caractères.

       ENOENT  Le fichier n'existe pas

       EACCES  Un  composant  du  chemin d'accès ne permet pas le
               parcours

       EACCES  Le fichier n'est pas accessible en écriture.

       ELOOP   Le chemin contient  une  référence  circulaire  (à
               travers un lien symbolique)

       EISDIR  Le fichier est en réalite un répertoire

       EROFS   Le fichier se trouve sur un système de fichiers en
               lecture seule.

       ETXTBSY Le fichier est un programme actuellement en  cours
               d'exécution.

       EIO     Une  erreur d'entrée/sortie s'est produite pendant



Linux                      18 Mai 1999                          1





TRUNCATE(2)        Manuel du programmeur Linux        TRUNCATE(2)


               la mise à jour.

       EFAULT  Path pointe  en  dehors  de  l'espace  d'adressage
               accessible.

       Pour ftruncate:

       EBADF   fd n'est pas un descripteur valide.

       EINVAL  fd est une socket, pas un fichier.

       EINVAL  fd n'est pas ouvert en écriture.

CONFORMITÉ
       BSD  4.4,  SVr4 (cette fonction est apparue dans BSD 4.2).
       SVr4 mentionne des  conditions  d'erreurs  supplémentaires
       pour  truncate  EINTR,  EMFILE,  EMULTIHOP,  ENAMETOOLONG,
       ENFILE, ENOLINK, ENOTDIR. La  version  SVr4  de  ftruncate
       dispose  des conditions d'erreur supplémentaires EAGAIN et
       EINTR.  POSIX dispose de ftruncate mais pas de truncate.

BUGS
       Ces appels devraient être généralisés  pour  permettre  la
       suppression d'une zone quelconque d'un fichier.

VOIR AUSSI
       open(2)


TRADUCTION
       Christophe Blaess, 1997.


























Linux                      18 Mai 1999                          2