1 SC2186
koalaman edited this page 2016-12-10 09:57:53 -08:00

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.