Utilità della riga di comando per recuperare la password, senza eco


14

Il comando di lettura integrata di Bash non sembra supportarlo, ora devo consentire all'utente di inserire una password mentre non deve essere visualizzato alcun eco, quale strumento posso usare?


4
help read|grep echo: " -snon fare eco all'input proveniente da un terminale"
donothings correttamente

1
@donothingsuccessfully Questa -sestensione di nonread è standard . Potresti non essere in grado di usarlo su nessun Unix / Linux.
Totor,

Risposte:


23
#!/bin/bash
stty -echo
IFS= read -p 'Enter password: ' -r password
stty echo
printf '\nPassword entered: %s\n' "$password"
  • stty -echo disattiva l'eco del terminale, che è il display di cui stai parlando;
  • IFS= è necessario per preservare gli spazi bianchi nella password;
  • read -r disattiva l'interpretazione della barra rovesciata.

In bashpuoi anche usare read -s, ma questa funzionalità non è standard tra le shell.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.