¿Cómo obtengo el código de retorno correcto de una aplicación de línea de comandos de Unix después de haberlo procesado a través de otro comando que tuvo éxito?Salida del comando Pipe, pero conserve el código de error
En detalle, aquí está la situación:
$ tar -cEvhf - -I ${sh_tar_inputlist} | gzip -5 -c > ${sh_tar_file} -- when only the tar command fails $?=0
$ echo $?
0
Y, lo que me gustaría ver es:
$ tar -cEvhf - -I ${sh_tar_inputlist} 2>${sh_tar_error_file} | gzip -5 -c > ${sh_tar_file}
$ echo $?
1
¿Alguien sabe cómo lograr esto?
'$?' Contiene el código de error. Podrías guardarlo en una variable. –
necesito guardar el código de retorno del comando intermedio, no el último comando. – SamiBOB