Se quiser mais informações sobre o bash, você pode digitar man bash para ler o manual on-line.
-eq é o operador correto para testar se os números são iguais.
? (sem o cifrão) "Corresponde a um único caractere" ao fazer correspondência de padrão de nome de arquivo. $? é um parâmetro especial que "se expande para o status do pipeline de primeiro plano executado mais recentemente" (para seus fins, "pipeline de primeiro plano" significa apenas comando)