1. NAME

tempfile - create a temporary file in a safe manner

2. SYNOPSIS

tempfile [-d DIR] [-p STRING] [-s STRING] [-m MODE] [-n FILE] [--directory=DIR] [--prefix=STRING] [--suffix=STRING] [--mode=MODE] [--name=FILE] [--help] [--version]

3. DESCRIPTION

tempfile creates a temporary file in a safe manner. It uses

R tempnam (3) to choose the name and opens it with O_RDWR | O_CREAT | O_EXCL. The filename is printed on standard output. See

R tempnam (3) for the actual steps involved in directory selection.

The directory in which to create the file might be searched for in this order (but refer to

R tempnam (3) for authoritative answers):

  • a)
       In case the environment variable

TMPDIR exists and contains the name of an appropriate directory, that is used.

  • b)
        Otherwise, if the --directory argument is specified and appropriate, it is used.
  • c)
        Otherwise, P_tmpdir (as defined in <stdio.h> ) is used when appropriate.
  • d)
        Finally an implementation-defined directory (/tmp) may be used.

4. OPTIONS

  • -d, --directory DIR
        Place the file in DIR.
  • -p, --prefix STRING
        Use up to five letters of STRING to generate the name.
  • -s, --suffix STRING
        Generate the file with STRING as the suffix.
  • -m, --mode MODE
        Open the file with MODE instead of 0600.
  • -n, --name FILE
        Use FILE for the name instead of

R tempnam (3) . The options -d, -p, and -s are ignored if this option is given.

--help

    Print a usage message on standard output and exit successfully.

--version

    Print version information on standard output and exit successfully.

5. RETURN VALUES

An exit status of 0 means the temporary file was created successfully. Any other exit status indicates an error.

6. BUGS

Exclusive creation is not guaranteed when creating files on NFS partitions.

7. EXAMPLE

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

8. SEE ALSO

R tempnam (3),

R mktemp (1)