Redireciona a saída para stdall.log, stderr.log e stdoutput.log + retorna o código de status

1

Eu já pesquisei e encontrei uma solução para aqui , mas sem retorno parte do código de status .

Como você pode ver, ele usa um sub-shells e eu não consigo um código de status de lá, então, baseando-me nesta resposta, eu quero escrever algo assim:

(((cmd; status=$?) | tee stdout.log) 3>&1 1>&2 2>&3 | tee stderr.log) &> all.log
if [ $status -ne 0 ]
then
  # do something with stderr.log and stdall.log
fi

Claro que no meu exemplo $status não é visível no shell pai. Como posso modificá-lo para as minhas necessidades?

    
por Eiji 31.01.2017 / 22:05

0 respostas