[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Asteriscos ao digitar senha
From: |
Flavio Junior |
Subject: |
Re: [shell-script] Asteriscos ao digitar senha |
Date: |
Tue, 13 Nov 2007 11:58:26 -0200 |
Bom..
escrevendo assim sem mta paciencia pra por em script e tal, isso pode
ajudar vc a montar a ideia:
$ unset PASS KEY; while [ "$KEY" != "exit" ]; do read -sn1 pass; if [
"$(tr '\n' '@' <<< $pass)" != "@" ] && [ "$(cat -vet <<< $pass)" !=
"^H" ]; then PASS=${PASS}${pass}; echo -n '*'; else KEY=exit; fi; done
Eu concordo q ta feio, mas eu nunca fui de escreve codigo bunito :)
Ai so falta tu adicionar algo pra limpar o backspace (pode usar um
echo -en '\b' por exemplo) e tirar o ultimo valor da variavel com:
echo -en $PASS'\b'
ACho que da pra montar com essas ideias...
Flávio do Carmo Júnior
On Nov 13, 2007 10:54 AM, Info Suporte - Rodrigo Nery
<address@hidden> wrote:
>
>
>
>
>
>
>
> Olá pessoal,
>
> Existe alguma forma de substituir uma senha digitada por asteriscos
> no momento da leitura? Tenho lido senhas do modo abaixo, porém gostaria de
> melhorá-lo no sentido de que o usuário possa ver quantos caracteres digitou
> pelo número de asteriscos e se errou na quantidade saiba quando parar de
> pressionar o backspace.
>
> echo "Informe a senha: [ ]"
> echo "\033[1;20H\c" # posicionamento no campo
> stty -echo
> read pass
> stty echo
>
> Obrigado!
> Rodrigo
>