Intentar protegerse adecuadamente de las salidas distintas de cero en un script bash.
¿Cuál es la diferencia entre -e, -u y -o pipefail?
-o pipefail no es suficiente para salir con un código de error?
set -e : salga inmediatamente si un comando sale con un estado distinto de cero.
set -u : si intenta acceder a una variable indefinida, es un error.
set -o pipefail : si algún comando en una tubería devuelve un código de salida distinto de cero, el código de retorno de toda la tubería es el código de salida del último comando fallido.