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