Ao "digitar senhas", você provavelmente insere dados sem estar visível para o usuário.
(sugerido por geirha) Ao usar o bash, você pode usar a opção -s para evitar que caracteres digitados sejam exibidos:
read -p "Password please: " -s pass
Como alternativa, altere o comportamento do terminal para ocultar os caracteres digitados com stty -echo (desativar echo ). Depois de ler a senha com o shell integrado read em uma variável (no exemplo abaixo, $pass ), ative-a novamente com stty echo . Como a nova linha de Enter está oculta, você deve imprimir uma nova linha para obter uma saída futura em uma nova linha.
stty -echo
read -p "Password please: " pass
stty echo
printf '\n'
read e printf são internos do shell. stty é fornecido pelo pacote coreutils , que é instalado por padrão. Isso significa que esse trecho é muito portável.
Observação: a opção -p não é padrão, mas de bash . Se você precisar exibir um prompt em outros shells, use:
printf "Password please: "
stty -echo
read pass
stty echo
printf '\n'
Referências:
- Página de manual de
stty - Página de manual de
bash