Duplicar posibles:
Automatic exit from bash shell script on errorStop en primer error
¿Cómo puedo tener parada bash en el primer fracaso de comandos, sin poner cosas como esta a lo largo de mi código?
some_prog || exit 1
some_other_prog || exit 1
Duplicar posibles:
Automatic exit from bash shell script on errorStop en primer error
¿Cómo puedo tener parada bash en el primer fracaso de comandos, sin poner cosas como esta a lo largo de mi código?
some_prog || exit 1
some_other_prog || exit 1
Tal vez usted quiere set -e
:
http://www.davidpashley.com/articles/writing-robust-shell-scripts.html#id2382181
Esto le indica a Bash que debería salir de la secuencia de comandos si ninguna instrucción devuelve un valor verdadero no-retorno. El beneficio de usar -e es que evita que los errores se conviertan en problemas graves cuando podrían haberse detectado antes. De nuevo, para facilitar la lectura, puede usar set -o errexit.
Tenga en cuenta 'set -e' gotchas: http://mywiki.wooledge.org/BashFAQ/105 – Kris
@Kris Gracias, esto me mordió en linux mint. sale silenciosamente del script sin mensaje. así que eliminé el set -e uso. –
@LukeW esto es normal. Sin embargo, el código de salida será distinto de cero, lo que indica un error. También cualquier programa que falla normalmente imprime un mensaje de error por sí mismo, intente con solo shebang + 'set -e' + e.g. 'ls nope'. Obtiene un mensaje de error claro y las secuencias de comandos fallan temprano. Excelente software – vidstige