aboutsummaryrefslogtreecommitdiff
path: root/man/man1/mktd.1df
diff options
context:
space:
mode:
Diffstat (limited to 'man/man1/mktd.1df')
-rw-r--r--man/man1/mktd.1df38
1 files changed, 38 insertions, 0 deletions
diff --git a/man/man1/mktd.1df b/man/man1/mktd.1df
new file mode 100644
index 00000000..8224d2d7
--- /dev/null
+++ b/man/man1/mktd.1df
@@ -0,0 +1,38 @@
+.TH MKTD 1df "August 2016" "Manual page for mktd"
+.SH NAME
+.B mktd
+\- try hard to safely create a temporary directory in a POSIX-compliant way
+.SH SYNOPSIS
+.B mktd
+.br
+.B mktd
+foo
+.SH DESCRIPTION
+.B mktd
+creates a temporary directory with a strong attempt at a random name in $TMPDIR
+(defaults to /tmp), with a restrictive umask for the user running the script,
+into which it should be safe to place temporary files.
+.P
+The author makes no guarantees about security, but this should be a lot safer
+than just using a /tmp/$$ file.
+.P
+You could use it in a script like this:
+.P
+ td=
+ cleanup() {
+ [ "$td" ] && rm -fr -- "$td"
+ if [ "$1" != EXIT ] ; then
+ trap - "$1"
+ kill "-$1" "$$"
+ fi
+ }
+ for sig in EXIT HUP INT TERM ; do
+ trap "cleanup $sig" "$sig"
+ done
+ td=$(mktd myprogram) || exit
+.SH SEE ALSO
+rndi(1df)
+.br
+<http://mywiki.wooledge.org/BashFAQ/062>
+.SH AUTHOR
+Tom Ryder <tom@sanctum.geek.nz>