O que é isso?
$? é uma variável incorporada que armazena o status de saída de um comando, função ou o próprio script.
$? lê o status de saída do último comando executado. Depois que uma função retorna, $? fornece o status de saída do último comando executado na função. Esta é a maneira de Bash dar às funções um "valor de retorno". Ele retorna 0 no sucesso ou um inteiro no intervalo 1 - 255 no erro.
Existem outras também?
Sim, existem várias variáveis internas no bash. Você pode ver uma lista aqui . Referir: link