Eine Sache, die mich bei der Verwendung des Linux-Terminals stört, ist, wenn ich ein unsichtbares Kennwort eingeben muss, wie wenn Sie ssh ausführen . Manchmal tippe ich einen oder mehrere Buchstaben falsch ein und muss dann einige Male die Rücktaste drücken, um sicherzustellen, dass ich alles gelöscht habe, um von vorne zu beginnen.
Ich weiß, dass dies keine große Sache ist, aber da ich neulich herausgefunden habe, dass das Drücken von STRG + L das Terminal "löscht", fragte ich mich, ob es eine Möglichkeit gibt, das unsichtbare Passwort zu löschen / löschen, ohne auf die Rücktaste zu angewiesen zu sein oder die Eingabetaste zu drücken Versuch es noch einmal.
Ich weiß, dass dies bereits beantwortet wurde, aber die Antwort erklärt nicht, was los ist.
Zeichen wie Ctrl+ Lwerden von der Anwendung verarbeitet . Wenn Sie beispielsweise Eingaben in die Shell
bash
eingeben, wird der Bildschirm gelöscht. Einige Anwendungenemacs
verwenden es beispielsweise, um den Bildschirm neu zu zeichnen und / oder den Cursor neu zu zentrieren.Zeichen wie Ctrl+ Uan einer Passwortabfrage werden von der TTY-Zeilendisziplin behandelt . Sie funktionieren immer dann, wenn sich das Eingabeterminal im "kanonischen" Zeilenbearbeitungsmodus befindet. In diesem Modus befinden sich Ihre Programme, während Sie ein Kennwort eingeben. In diesem Modus interpretiert der Linux-Kernel selbst diese Zeichen. Welche Funktionen welchen Tasten zugeordnet sind, sehen Sie in der Ausgabe von
stty -a
:Hier können Sie sehen, dass Ctrl+ an Ugebunden ist
kill
, was (gemäß der stty-Manpage ) "die aktuelle Zeile löscht". Sie könnenstty
dieses Mapping auch verwenden , um Folgendes zu ändern:Diese Seite enthält viele großartige Informationen über die TTY-Ebene, wenn Sie interessiert sind.
Wenn die Dinge nicht verwirrend genug wären: Wenn Sie an der Eingabeaufforderung eines interaktiven Programms teilnehmen
bash
, befinden Sie sich tatsächlich nicht im "kanonischen" Zeilenbearbeitungsmodus. Empfängt stattdessenbash
jedes Zeichen direkt während der Eingabe und interpretiert die Steuersequenzen selbst über die Readline- Bibliothek. Diese Bibliothek wird die Zuordnungen ehren Sie auf Ihrem Endgerät festgelegt haben, obwohl, so können Sie immer noch verwenden , umstty
sie zu ändern. Sie können sie auch unabhängig inbash
und in anderen Readline-basierten Programmen anpassen, indem Sie dieunix-line-discard
Eigenschaft in Ihrer~/.inputrc
Datei festlegen. Weitere Informationen finden Sie auf der bash-Manpage .Wenn Sie ein Programm ausführen,
bash
wird der kanonische Zeilenbearbeitungsmodus (stty icanon
) wieder aktiviert, sofern er zuvor aktiviert war, und nach Beendigung des Programms wieder deaktiviert (stty -icanon
).quelle