How do I create a temporary file in a secure manner?
Good question. To be filled in later. (Interim hints: tempfile is not portable. mktemp exists more widely, but it may require a -c switch to create the file in advance; or it may create the file by default and barf if -c is supplied. There does not appear to be any single command that simply works everywhere, without testing various arguments.)
Suggestion (remove if not universal): A temporary file/directory can be created that is unlikely to match that of an existing file/directory using the RANDOM environmental variable as follows:
TEMP_DIR=/tmp/$RANDOM mkdir $TEMP_DIR
This will make a directory of the form: /tmp/20445/. To decrease the chance of collision with an existing file, the RANDOM variable can be used a number of times:
TEMP_DIR=/tmp/$RANDOM-$RANDOM-$RANDOM mkdir $TEMP_DIR
This will make a directory of the form: /tmp/24953-2875-2182/