What does set -e mean in a bash script?
From help set : -e Exit immediately if a command exits with a non-zero status. But it’s considered bad practice by some (bash FAQ and irc freenode #bash FAQ authors). It’s recommended to use: trap ‘do_something’ ERR to run do_something function when errors occur. See http://mywiki.wooledge.org/BashFAQ/105