Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
MKTEMP(1)               FreeBSD General Commands Manual              MKTEMP(1)

NAME
     mktemp - make temporary file name (unique)

SYNOPSIS
     mktemp [-d] [-q] [-u] template

DESCRIPTION
     The mktemp utility takes the given file name template and overwrites a
     portion of it to create a file name.  This file name is unique and
     suitable for use by the application.  The template may be any file name
     with at least 6 of `Xs' appended to it, for example /tmp/temp.XXXXXX.
     The trailing `Xs' are replaced with the current process number and/or a
     unique letter combination.  The number of unique file names mktemp can
     return depends on the number of `Xs' provided; six `Xs' will result in
     mktemp testing roughly 26 ** 6 combinations.

     If mktemp can successfully generate a unique file name, the file is
     created with mode 0600 (unless the -u flag is given) and the filename is
     printed to standard output.

OPTIONS
     The available options are as follows:

     -d      Make a directory instead of a file.

     -q      Fail silently if an error occurs.  This is useful if a script
             does not want error output to go to standard error.

     -u      Operate in ``unsafe'' mode.  The temp file will be unlinked
             before mktemp exits.  This is slightly better than mktemp(3) but
             still introduces a race condition.  Use of this option is not
             encouraged.

RETURN VALUES
     The mktemp utility exits with a value of 0 on success, and 1 on failure.

EXAMPLES
     The following sh(1) fragment illustrates a simple use of mktemp where the
     script should quit if it cannot get a safe temporary file.

           TMPFILE=`mktemp /tmp/$0.XXXXXX` || exit 1
           echo "program output" >> $TMPFILE

     In this case, we want the script to catch the error itself.

           TMPFILE=`mktemp -q /tmp/$0.XXXXXX`
           if [ $? -ne 0 ]; then
                   echo "$0: Can't create temp file, exiting..."
                   exit 1
           fi

     Note that one can also check to see that $TMPFILE is zero length instead
     of checking $?.  This would allow the check to be done later one in the
     script (since $? would get clobbered by the next shell command).

SEE ALSO
     mkstemp(3), mktemp(3)

HISTORY
     The mktemp utility appeared in OpenBSD.

FreeBSD 11.0-PRERELEASE       November, 20, 1996       FreeBSD 11.0-PRERELEASE

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | RETURN VALUES | EXAMPLES | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=mktemp&sektion=1&manpath=Red+Hat+Linux%2fi386+9>

home | help