Como capturar o código de retorno (não o código de saída)

0

Eu tenho um script que executa algum processo e retorna um número baseado no status do trabalho. Este script é acionado no segundo plano.

ou seja,

ksh -x myscript.sh 20150102 &

Minha pergunta é como posso obter o código de retorno do processo em segundo plano? Existe uma maneira de obter o código de retorno como para o código de saída $?

    
por Sas 02.02.2015 / 15:49

1 resposta

3

Use wait :

# Start the job:
ksh -x myscript.sh 20150102 &

# Save its process ID
job_pid=$!

# Do some other stuff in the meantime
asdf ghjk
zxcv qwer

# Later, when you want to know what its exit status was:
wait $job_pid
if [ $? -ne 0 ]; then
    echo "Something may have gone wrong" >&2
else
    echo "The world is perfect." >&2
fi

Neste contexto, estou considerando o "código de retorno" e o "código de saída" como sinônimos. Se você quer dizer que os termos têm significados diferentes um do outro, então eu entendi mal, mas não consigo imaginar qual seja a diferença.

    
por 02.02.2015 / 16:04