Bash Trap Tempdir Cleanup

Register trap handlers for cleanup on exit signal and error for safe scripts.

BashSecurity Boundaries

Code

snippet
#!/bin/bash
set -euo pipefail
TMPDIR=$(mktemp -d)
cleanup() {
  rm -rf "$TMPDIR"
  echo "cleaned up" >&2
}
trap cleanup EXIT
trap 'cleanup; exit 130' INT
trap 'cleanup; exit 143' TERM

echo "working in $TMPDIR"
touch "$TMPDIR/file.txt"
sleep 10
echo "done"