Você está procurando código de saída, que indica sucesso ou falha do comando anterior, executado na mesma sessão.
Você precisa:
$?
Então faça:
echo $?
Ele produzirá um inteiro positivo de 0 a 255, inclusive, em que 0
significa sucesso e qualquer outro valor que falhou, com vários valores usados para indicar vários motivos / causas de falha.
Agora enquanto você está fazendo:
echo #?
você verá apenas uma nova linha, que é o comportamento padrão de echo
sem nenhum argumento. Você não tem nenhum argumento aqui, pois qualquer coisa que comece com #
se torna um comentário na linha de comando, então #?
está sendo tratado como um comentário.