SC2186 – ShellCheck Wiki

See this page on GitHub

Sitemap


tempfile is deprecated. Use mktemp instead.

Problematic code:

tmp=$(tempfile)

Correct code:

tmp=$(mktemp)

Rationale:

tempfile is a Debian specific utility for creating temporary files. Its man page notes:

tempfile is deprecated; you should use mktemp(1) instead.

Neither tempfile nor mktemp are POSIX, but tempfile is Debian specific while mktemp works on GNU, OSX, BusyBox, *BSD and Solaris.

Exceptions:

ShellCheck will not recognize when a function overrides this name.


ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.