Bash: Quiero ejecutar un comando y canalizar los resultados a través de algún filtro, pero si falla el comando, quiero volver valor de error del comando, no el valor de retorno aburrido del filtro:script bash: cómo guardar el valor de retorno del primer comando en una canalización?
Ej:
if !(cool_command | output_filter); then handle_the_error; fi
o:
set -e
cool_command | output_filter
en cualquiera de los casos es el valor de retorno de cool_command
que me importa - por el 'si' condición en el primer caso, o para salir de la secuencia de comandos en el segundo caso.
¿Hay alguna lengua limpia para hacer esto?
Solo para completar la respuesta, '[[$ {PIPESTATUS [0]} -ne 0]] && handle_the_error' – jozxyqk