# phpman > man > tempfile(1)

[TEMPFILE(1)](https://www.chedong.com/phpMan.php/man/TEMPFILE/1/markdown)                            General Commands Manual                           [TEMPFILE(1)](https://www.chedong.com/phpMan.php/man/TEMPFILE/1/markdown)



## NAME
       tempfile - create a temporary file in a safe manner

## SYNOPSIS
       **tempfile**  [-d  DIR]  [-p  STRING]  [-s  STRING] [-m MODE] [-n FILE] [--directory=DIR] [--pre‐
       fix=STRING] [--suffix=STRING] [--mode=MODE] [--name=FILE] [--help] [--version]

## DESCRIPTION
       **tempfile** creates a temporary file in a safe manner.  It uses [**mkstemps**(3)](https://www.chedong.com/phpMan.php/man/mkstemps/3/markdown) 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) In case the environment variable **TMPDIR** exists and contains the name of an appropriate di‐
          rectory, 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.

## OPTIONS
### -d, --directory
              Place the file in DIR.

### -m, --mode
              Open the file with MODE instead of 0600.

### -n, --name
              Use FILE for the name instead of [**tempnam**(3)](https://www.chedong.com/phpMan.php/man/tempnam/3/markdown)**.**  The options -d, -p, and -s  are  ignored
              if this option is given.

### -p, --prefix
              Use up to five letters of STRING to generate the name.

### -s, --suffix
              Generate the file with STRING as the suffix.

       **--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.  tempfile  cannot
       make temporary directories.  tempfile is deprecated; you should use [**mktemp**(1)](https://www.chedong.com/phpMan.php/man/mktemp/1/markdown) instead.

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

## SEE ALSO
       [**tempnam**(3)](https://www.chedong.com/phpMan.php/man/tempnam/3/markdown), [**mktemp**(1)](https://www.chedong.com/phpMan.php/man/mktemp/1/markdown)



Debian                                       27 Jun 2012                                 [TEMPFILE(1)](https://www.chedong.com/phpMan.php/man/TEMPFILE/1/markdown)
