Rücktaste und Tab funktionieren im Terminal nicht (bei Verwendung von SSH)

Rücktaste und Tab funktionieren im Terminal nicht (bei Verwendung von SSH)

Wenn ich mich mit meinem Konto (mit Sudo-Berechtigungen) per SSH bei einem anderen Rechner mit Debian anmelde, erzeugt meine Rücktaste beim Drücken einige merkwürdige Symbole. Auch die Tasten Tab& delfunktionieren nicht.

Andererseits habe ich auf derselben Maschine noch ein weiteres Konto und wenn ich über dieses Konto SSH verwende, funktioniert dessen Terminal einwandfrei. Ich konnte nicht herausfinden, warum das passiert.

Antwort1

Neben der „stty“-Lösung können Sie die „TERM“-Lösung ausprobieren.

Sie greifen von einem Terminal (Putty, Solaris DTerm, Debain XTerm usw.) per SSH auf Ihr Debian zu. Dieses Terminal kündigt seine Funktionen (einschließlich Tasten wie Backspace und Tab) über die Umgebungsvariable TERM an.

Stellen Sie also nach dem SSH zum Unix-Host (es hängt nicht von Debian oder einem anderen Host ab) die Variable TERM entsprechend Ihrem Terminal ein. Nehmen Sie an, Sie verwenden Bash als Shell und VT100 als Terminal:

export TERM=vt100

PS: TERM sollte automatisch über SSH angekündigt werden, aber unter bestimmten Umständen schlägt dieser Zauber fehl.

Antwort2

Ich habe solche Probleme schon einmal gesehen.

Nehmen wir zum Beispiel die Rücktaste. Der Remote-Host erwartet, dass ein bestimmtes Zeichen als „Löschen/Rücktaste“ verwendet wird. Wenn Sie die Rücktaste im Terminal drücken, sendet das Terminalprogramm ein bestimmtes Zeichen an den Remote-Host. Wenn die vom Remote-Host erwarteten Zeichen von den vom Terminalprogramm gesendeten Zeichen abweichen, tritt dieses Problem auf. Eine schnelle Lösung ist die folgende:

  1. Führen Sie den Befehl #stty -aauf dem Remote-Host aus und suchen Sie in der Ausgabe nach dem, was ein Löschcode sein soll. Sagen Sie erase=^?.
  2. Drücken Sie im Terminal Ctrl+ vund dann die Rücktaste. Sie sehen, welcher Code als „Löschen“ gesendet wird. Sagen Sie, es ist ^H.
  3. Führen Sie auf dem Remote-Host aus #stty erase ^H.
    (Hinweis: Verwenden Sie Ctrlv+ Backspace, geben Sie das ^ nicht manuell ein.)

Sie können das Tab-Problem wie oben beschrieben beheben.

Antwort3

Dies liegt daran, dass Ihre Standard-Shell ist. shUm zu verwenden bash, führen Sie es einfach bashvon Ihrer Shell aus aus.

bash

So legen Sie es bashals Standard-Shell fest:

chsh -s /bin/bash 

oder

sudo chsh -s /bin/bash yourusername

Antwort4

Ihre Shell ist möglicherweise auf /bin/shstatt auf/bin/bash

verwandte Informationen