Другой вариант - использовать trap, чтобы поймать сигнал EXIT:
trap
EXIT
trap 'echo "ls failed" ; some_rescue_action' EXIT ls /non_exist