GNU/Linux >> Linux Esercitazione >  >> Linux

Elimina la password inserita nel prompt della password nascosta (Linux) con scorciatoia

Puoi cancellare l'intera password digitata con Ctrl +U .


A differenza di bash , ssh la richiesta della password di non utilizza alcuna libreria di input da terminale speciale come readline . Le funzionalità di modifica della riga sono solo le funzionalità di modifica della riga TTY POSIX di base.

Quindi hai un TTY POSIX in modalità "cotto" (non raw), noto anche come modalità canonica, e l'unica modifica di riga disponibile è quella fornita dal kernel. Vedi stty(1) , e notalo
kill = ^U . Qui è anche dove viene definito il carattere backspace (erase = ^? ). Cancella parola (^W ) è comodo quando non stai digitando alla cieca.

lnext = ^V significa che puoi digitare control-v e poi qualsiasi cosa (incluso control-c) per ottenere un controllo letterale-c.

Per eseguire il debug di ciò che stavi cercando di fare alla cieca, esegui cat o cat > /dev/null nel tuo terminale . Digita le cose, poi vedi cosa funziona e cosa no per modificarle.

readline (usato da bash ) legge il carattere non elaborato ed esegue la modifica della riga nello spazio utente. Le sue associazioni predefinite sono compatibili con i caratteri di controllo TTY predefiniti, tuttavia, per il sottoinsieme di funzionalità di modifica che entrambi forniscono.

readline va ben oltre la semplice modifica della riga di un semplice TTY. (ad es. un TTY può eliminare solo i caratteri alla fine della riga, quindi non c'è ^a e delete o freccia sinistra/destra)

Quando bash esegue un comando in primo piano, mette prima il TTY in modalità canonica (perché è l'impostazione predefinita). Quindi eseguendo stty -a (senza reindirizzamento) vedrà sempre il proprio terminale in modalità canonica. Ma se reindirizzi l'input da qualche altro TTY che ha bash in esecuzione su di esso, puoi vedere quali impostazioni del terminale bash + readline sono state applicate. per esempio. stty -a < /dev/pts/12 mostra -icanon per la modalità raw perché ho un bash in esecuzione su quel terminale. (Sono passato a un'altra scheda e ho eseguito tty , quindi ha utilizzato il percorso del file del dispositivo dal primo terminale). Se ho eseguito cat in quell'altro terminale, vedrei icanon per la modalità canonica.

Correlati:il TTY demistificato

https://www.gnu.org/software/libc/manual/html_node/Canonical-or-Not.html

https://en.wikipedia.org/wiki/POSIX_terminal_interface


Linux
  1. Utilizzo di modificatori di parole con la cronologia di Bash in Linux

  2. Automazione password SSH in Linux con sshpass

  3. Samba Mount con richiesta di password come utente non root?

  4. Linux Bash XMLLINT con XPATH

  5. Come controllare la password con Linux?

Trova account utente con password vuota in Linux

Come modificare il prompt di Sudo in Linux

Comando Bash Echo spiegato con esempi in Linux

Elimina gli utenti in Linux con il comando Userdel

Elimina i gruppi in Linux con il comando groupdel

Come proteggere GRUB con password in Linux?