Как получить правильный код возврата из приложения командной строки unix после того, как я выполнил его через другую команду, которая преуспела?Вывод команды Pipe, но сохраните код ошибки
подробно, вот ситуация:
$ tar -cEvhf - -I ${sh_tar_inputlist} | gzip -5 -c > ${sh_tar_file} -- when only the tar command fails $?=0
$ echo $?
0
И то, что я хотел бы видеть это:
$ tar -cEvhf - -I ${sh_tar_inputlist} 2>${sh_tar_error_file} | gzip -5 -c > ${sh_tar_file}
$ echo $?
1
Кто-нибудь знает, как это сделать?
'$?' Содержит код ошибки. Вы можете сохранить его в переменной. –
Мне нужно сохранить код возврата промежуточной команды, а не последнюю команду. – SamiBOB