$TMPDIR é mais padrão que $TEMP e $TMP , como é mencionado pelo padrão POSIX.
The
/tmpdirectory is retained in POSIX.1-2008 to accommodate historical applications that assume its availability. Implementations are encouraged to provide suitable directory names in the environment variableTMPDIRand applications are encouraged to use the contents ofTMPDIRfor creating temporary files.
Ref: link
Pelo menos no macOS, $TMPDIR não está definido como /tmp por padrão, mas como algo como /var/folders/4r/504v61kx02gczk_454db345c0000gn/T/ . O /tmp ainda está disponível, como um link simbólico para /private/tmp (por qualquer motivo).
Você pode usar tmpdir="${TMPDIR:-/tmp}" em um script, por exemplo, para usar $TMPDIR se estiver definido ou /tmp se não estiver definido (ou vazio).
O utilitário mktemp não padrão criará um arquivo ou diretório em $TMPDIR por padrão e exibirá seu nome:
tmpfile=$(mktemp)
tmpdir=$(mktemp -d)
Verifique o manual de mktemp em seu sistema para descobrir como usá-lo. Nem todas as implementações são iguais.