TEMPFILE(1)

NAME
tempfile - create a temporary file in a safe manner

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

DESCRIPTION

tempfile creates a temporary file in a safe manner. It uses tempnam(3) to choose the name and opens it with O_RDWR | O_CREAT | O_EXCL. The filename is printed on standard output.

The directory in which to create the file might be searched for in this order:

a)  The directory specified by the environment variable TMPDIR, if it exists.

b)  The directory specified by the --directory argument, if given.

c)  The directory /tmp.

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

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

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

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

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

SEE ALSO
tempnam(3), mktemp(1)