Created SC2186 (markdown)

koalaman
2016-12-10 09:57:53 -08:00
parent 4e1ffdc659
commit e312e6abb2

24
SC2186.md Normal file

@@ -0,0 +1,24 @@
## tempfile is deprecated. Use mktemp instead.
### Problematic code:
```sh
tmp=$(tempfile)
```
### Correct code:
```sh
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.