status de saída e sem saída

status de saída e sem saída

Eu tenho um comando tal que

bar > /dev/null

e quero saber o status de saída da barra. Eu li alguns postssucerca de $, {PIPESTATUS[0]}mas isso funciona quando alguém canaliza a saída |e não consigo fazê-la funcionar >.

o que estou perdendo?

Responder1

>não é um comando. Isso significa que bar será o último comando executado. Você pode verificar a falha com uma ifdeclaração padrão:

if ! bar > /dev/null; then
    echo "bar command failed"
fi

Você também pode acessar seu código de retorno $?se estiver interessado em algo maior que zero ou diferente de zero:

bar > /dev/null
if [ "$?" -eq 45 ]; then
  echo "bar returned exit code 45"
fi 

informação relacionada