When I want to take action on a failure I do:
if ! commmand;
then
echo $?
fi
But the exit code is always 0.
When I want to take action on a failure I do:
if ! commmand;
then
echo $?
fi
But the exit code is always 0.
If you need to exit status later, you might consider saving it in a variable:
command
status=$?
if (( status != 0 )); then
echo $status
fi
I fixed it by removing the !
negation and using an empty then
block:
if commmand;
then :
else
echo $?
fi
Related questions: