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.