Bash stack trace and error handling functions Usually, just copy the err file and source it. Then on any non-zero return code outside of a conditional, the program will exit and print a stack trace. The err file has some functions which you may want to call manually for different or additional error handling. See the comments at the start of each one. For scripts where functions are not used, you can optionally use a more minimal approach: set -eE -o pipefail trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR In the above line, cleanup commands or functions can be appended to the ERR trap after a semicolon within the single quotes. Related: see my bash script template repo, at https://iankelling.org/git. Please email me if you have a patches, bugs, feedback, or republish this somewhere else: Ian Kelling .