Utilitário de linha de comando para recuperar a senha, que não tem retorno de eco


14

O comando Bash builtin read não parece suportá-lo, agora eu preciso permitir que o usuário insira uma senha enquanto nenhum eco deve ser exibido. Que ferramenta posso usar?


4
help read|grep echo: " -snão faça eco da entrada proveniente de um terminal"
donothingsuccessfully

1
@donothingsuccessfully Esta -sextensão de nãoread é padrão . Você pode não conseguir usá-lo em nenhum Unix / Linux.
Totor

Respostas:


23
#!/bin/bash
stty -echo
IFS= read -p 'Enter password: ' -r password
stty echo
printf '\nPassword entered: %s\n' "$password"
  • stty -echo desativa o eco do terminal, que é o monitor que você está falando;
  • IFS= é necessário preservar espaços em branco na senha;
  • read -r desativa a interpretação da barra invertida.

Em bashvocê também pode usar read -s, mas este recurso não é padrão em conchas.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.