cheat sheet for https://tldp.org/LDP/abs/html/parameter-substitution.html
Variable existence checking
${var:?} # returns exit-code 1 if var not defined or null
${var:?err_msg} # prints err_msg and returns exit-code 1 if var not defined or null