tempfile(1) Créer un fichier temporaire de façon sûre

SYNOPSIS

tempfile [-d REP] [-p CHAÎNE] [-s CHAÎNE] [-m MODE] [-n FICHIER] [--directory=REP] [--prefix=CHAÎNE] [--suffix=CHAÎNE] [--mode=MODE] [--name=FICHIER] [--help] [--version]

DESCRIPTION

Le programme tempfile crée un fichier temporaire de façon sûre. Il utilise tempnam(3) pour choisir un nom et l'ouvre dans le mode O_RDWR | O_CREAT | O_EXCL. Le nom du fichier est affiché sur la sortie standard. Voir tempnam(3) pour les différentes étapes de la sélection des répertoires.

Une recherche peut être effectuée dans le répertoire où le fichier sera créé, dans l'ordre suivant (se référer toutefois à tempnam(3) pour des réponses faisant autorité à ce sujet) :

a)
la variable d'environnement TMPDIR sera utilisée si elle existe et contient le nom d'un répertoire approprié ;
b)
sinon, si l'option --directory est utilisée, le répertoire spécifié est utilisé, à condition qu'il soit valide ;
c)
sinon, le répertoire P_tmpdir (tel que défini dans <stdio.h>) est utilisé s'il est valide ;
d)
enfin, un répertoire (/tmp) défini par l'implémentation peut être utilisé ;

OPTIONS

-d, --directory REP
place le fichier dans REP.
-m, --mode MODE
ouvre le fichier dans le mode MODE plutôt que 0600.
-n, --name FICHIER
utilise FICHIER comme nom plutôt que tempnam(3). Les options -d -p et -s sont ignorées si cette option est utilisée.
-p, --prefix CHAÎNE
utilise jusqu'à cinq lettres de CHAÎNE pour générer le nom.
-s, --suffix CHAÎNE
génère le fichier en utilisant CHAÎNE comme suffixe.
--help
affiche un message d'aide sur la sortie standard, puis quitte sans erreur.
--version
affiche les informations sur la version, puis quitte sans erreur.

VALEUR DE RETOUR

Une valeur de retour 0 signifie que le fichier a été créé avec succès. Toute autre valeur de retour indique une erreur.

BOGUES

Une création exclusive ([ NdT : pour éviter toute situation de compétition, ou « race condition » ]) n'est pas garantie lorsque le fichier est créé sur une partition NFS. tempfile ne peut pas faire de répertoire temporaire. Le programme tempfile est obsolète. Il est conseillé d'utiliser mktemp(1) à la place.

EXEMPLES

#!/bin/sh
#[...]
t=$(tempfile) || exit
trap "rm -f -- '$t'" EXIT
#[...]
rm -f -- "$t"
trap - EXIT
exit

TRADUCTION

Ce document est une traduction, réalisée par Nicolas FRANÇOIS le 8 décembre 2005.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.

La version anglaise la plus à jour de ce document est toujours consultable en ajoutant l'option « -L C » à la commande man.

N'hésitez pas à signaler à l'auteur ou à la liste de traduction <[email protected]>, selon le cas, toute erreur dans cette page de manuel.