GNU/Linux >> Tutoriels Linux >  >> Linux

Supprimer le mot de passe saisi dans l'invite de mot de passe masqué (Linux) avec un raccourci

Vous pouvez supprimer l'intégralité du mot de passe tapé avec Ctrl +U .


Contrairement à bash , ssh L'invite de mot de passe n'utilise aucune bibliothèque spéciale d'entrée de terminal comme readline . Les fonctionnalités d'édition de ligne ne sont que les fonctionnalités d'édition de ligne POSIX TTY de base.

Vous avez donc un TTY POSIX en mode "cuit" (pas brut), c'est-à-dire en mode canonique, et la seule édition de ligne disponible est celle fournie par le noyau. Voir stty(1) , et remarquez que
kill = ^U . C'est également là que le caractère de retour arrière est défini (erase = ^? ). Mot-effacement (^W ) est pratique lorsque vous ne tapez pas à l'aveugle.

lnext = ^V signifie que vous pouvez taper control-v puis n'importe quoi (y compris control-c) pour obtenir un control-c littéral.

Pour déboguer ce que vous essayiez de faire aveuglément, exécutez cat ou cat > /dev/null dans votre terminal . Tapez des éléments, puis voyez ce qui fonctionne et ce qui ne fonctionne pas pour le modifier.

readline (utilisé par bash ) lit les caractères bruts et effectue l'édition de ligne dans l'espace utilisateur. Ses liaisons par défaut sont compatibles avec les caractères de contrôle TTY par défaut, cependant, pour le sous-ensemble de fonctionnalités d'édition qu'ils fournissent tous les deux.

readline va bien au-delà de la simple édition de ligne d'un TTY ordinaire. (par exemple, un TTY ne peut supprimer que des caractères à la fin de la ligne, il n'y a donc pas de ^a et delete ou flèche gauche/droite)

Quand bash exécute une commande au premier plan, il met d'abord le TTY en mode canonique (car c'est la valeur par défaut). Exécutant donc stty -a (sans redirection) verra toujours son propre terminal en mode canonique. Mais si vous redirigez l'entrée d'un autre TTY qui a bash en cours d'exécution dessus, vous pouvez voir quels paramètres de terminal bash + readline ont été appliqués. par exemple. stty -a < /dev/pts/12 affiche -icanon pour le mode brut car j'ai un bash en cours d'exécution sur ce terminal. (Je suis passé à un autre onglet et j'ai exécuté tty , puis utilisé ce chemin de fichier de périphérique à partir du premier terminal). Si j'exécutais cat dans cet autre terminal, je verrais icanon pour le mode canonique.

En relation :Le TTY démystifié

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

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


Linux
  1. Hivériser votre invite Bash sous Linux

  2. Utilisation de modificateurs de mots avec l'historique Bash sous Linux

  3. Automatisation du mot de passe SSH sous Linux avec sshpass

  4. Modification du mot de passe du système Linux dans le script bash

  5. Comment raccourcir l'invite Bash sous Linux ?

Trouver des comptes d'utilisateurs avec un mot de passe vide sous Linux

Comment changer l'invite Sudo sous Linux

La commande Bash Echo expliquée avec des exemples sous Linux

Supprimer des utilisateurs sous Linux avec la commande Userdel

Supprimer des groupes sous Linux avec la commande groupdel

Comment protéger GRUB avec un mot de passe sous Linux ?