Ich habe kürzlich damit begonnen, Speicherplatz auf einem Remote-Server zu mieten, damit ich an einem Projekt arbeiten kann. Ich fand heraus, dass PuTTY eine relativ schmerzlose Möglichkeit ist, auf einem Windows-Computer darauf zuzugreifen. Eines hat mich bei der Verwendung jedoch immer geärgert: Es gibt scheinbar keinen Grund, warum gelegentlich zufällige Zeichen am Cursor eingefügt werden.
Meistens ist es nur eine einzelne Tilde, aber selten spuckt es etwas aus, das wie eine Escape-Sequenz aussieht ([[^ 8 oder ähnliches). Es wird nur auftreten, wenn ich auf das Fenster fokussiert bin, egal ob ich tippe oder 20 Fuß von der Tastatur entfernt bin. Wenn es lange genug belassen wird, spuckt es in zufälligen Abständen Tildes (der Durchschnitt liegt bei etwa 1 Minute).
Schließlich scheint dieses Verhalten inkonsistent zu sein, wenn Programme wie nano oder die mysql-Oberfläche ausgeführt werden: In nano werden anstelle des Einfügens von Tilden Markierungen gesetzt (Strg- ^). In MySQL können Zeilen nicht mehr bearbeitet werden.
Meine Frage lautet: Hat jemand anderes dieses Verhalten in PuTTY erlebt? Und wenn ja, was kann getan werden, um dieses Verhalten zu verhindern / zu korrigieren?
Antworten:
Ich hatte das gleiche Problem mit PuTTY und stellte fest, dass es durch eine von mir als "Koffein" bezeichnete Anwendung verursacht wurde, die effektiv jede Minute die Taste F13 drückt, um die Aktivierung des Bildschirmschoners zu stoppen (Gruppenrichtlinien verhindern, dass ich das Zeitlimit für den Bildschirmschoner auf ändere) meine Maschine). Durch Deaktivieren der Anwendung wurde das Problem behoben.
quelle
Wenn Sie Kitt und Koffein lieber laufen lassen möchten, gehen Sie folgendermaßen vor:
F15
Ctrl+V
(Dies ist erforderlich, um den speziellen Code für den Schlüssel abzurufen. Beispiel: try,Ctrl+V
gefolgt vonF12
).F15
ist^[[28~
, wo^[
sich ein Escape befindet). Stoppen Sie Koffein~
~/.inputrc
(neue Datei erstellen, falls nicht vorhanden)"\e[28~":""
~
wenn das Putty-Terminal mit diesem Linux-Server verwendet wirdquelle
Ich fand die Lösung von shreyansp die (aber nicht ganz) befriedigendste :)
Hier ist mein Versuch, das zu verbessern (natürlich YMMV). Hoffe, dass dies für diejenigen von Nutzen sein kann, die nach einer Lösung suchen :)
Meine Lösung verhält sich wie folgt:
TL; DR: Meine Lösung wird zwischen den Schritten 2 und 3 (siehe unten) mit dem
-key:0E
Koffein-Parameter angewendet: Koffein beendenund neu starten mit:
caffeine.exe 5 -key:0E
(zum einfachen Testen)caffeine.exe 50 -key:0E
(für einen obligatorischen Bildschirmschoner, der auf 1 Minute eingestellt ist)read
Programm auf dem Remote-Host und beobachten Sie, wie alle 5 oder 50 Sekunden keine Tastenanschläge empfangen werden.read
mitCtrl+C
Shreyansp schlug eine Lösung vor, bei der ein Fix zwischen den Schritten 5 und 10 angewendet wird (siehe unten).
Der Nebeneffekt davon (in meiner Konfiguration) war, dass bei jedem Tastendruck, den der Kitt von Koffein an den Remote-Host weiterleitete:
die ich normalerweise möchte, aber nur, wenn ich (der Mensch) die Taste drücke, aber nicht regelmäßig durch Koffein :)
'"\e[28~"'
nach'""'
(leerer Schlüssel?)) ließ die Remote-Session-Interaktion für einige Sekunden hängenUm dies einfach zu testen, beenden Sie Caffeine und starten Sie es mit einem Intervall von 5 Sekunden und Virtual-Key-Code 07 neu:
caffeine.exe 5 -key:07
read
Programm auf dem Remote-Host und beobachten Sie, wie alle 5 oder 50 Sekunden Tastenanschläge empfangen werden.read
mitCtrl+C
Der Tastenanschlag "Pipeline", wie ich es verstehe:
$TERM=xterm
,vt100
,vt102
,vt220
, etc.) übersetzt aus dem ‚Leitungsprotokoll‘ in Tastencodes.~/.inputrc
~/.bashrc
(basierend auf dem eingebauten Bindebefehl)screen
Programm hinzufügen (das ein$TERM=screen
für Schritt 5 enthält und bei Schritt 6 bis 10 wieder zurückspringt).Hinweis: Sobald Sie Schritt 4 erreicht haben, ist es sehr schwierig, die verschiedenen Ebenen von "Übersetzungen" / "Zuordnungen" genau zu steuern. Ich würde empfehlen, dies zu vermeiden, wenn Sie können.
Hintergrund:
Ich habe
caffeine.exe -key:07
jahrelang verwendet, bevor ich mich mit einem Pfsense 2.3.3-RELEASE-p1 (basierend auf FreeBSD 10.3-RELEASE) auseinandersetzen musste.Dann
caffeine.exe -key:07
wurde auf der anderen Seite als^[[28~
... empfangen, was aufCtrl+^
(Set Mark) in Nano abgebildet zu sein scheint .Das war ziemlich ärgerlich (stellen Sie sich vor, jemand drückt die Umschalttaste und hält sie gedrückt, während Sie das Text-Caret im Editor verschieben).
Früher habe ich zahlreiche Anpassungen in Putty - Einstellungen haben,
~/.tcshrc
,~/.inputrc
,~/.bashrc
,~/.nanorc
,~/.screenrc
zu bekommen , was ich grundlegende Funktionen betrachten (Backspace
,Delete
,Home
,End
,PgUp
,PgDown
,Ctrl+Left
,Ctrl+Right
, Numpad0-9
, Numpad./*-+
) arbeitet konsequent zwischen bash / Nano / Schirm.Als ich diesen
caffeine.exe -key:07
'Bug' entdeckte, wollte ich das nicht noch einmal nachvollziehen :)Getestet unter:
Windows 8.1 64-Bit Enterprise (6.3.9600) / Putty 0.66 / pfsense 2.3.3-RELEASE-p1 (basierend auf FreeBSD 10.3-RELEASE) / bash 4.4.12-release / nano 2.7.3 / screen 4.04. 00
Verweise:
Koffein:
Undefined
Code wählen, der für Ihr Setup geeignet ist)Readline / inputrc / bash / bashrc / (eingebaute) Bindung:
Kitt:
quelle
Dies sieht wirklich wie eine Escape-Sequenz oder ein Steuerzeichen aus, was möglicherweise erklärt, warum Sie es in anderen Programmen wie Notepad nicht sehen.
Ich bin nicht ganz sicher, welche Tasten gedrückt werden müssen, um diese Ausgabe zu erhalten, aber ich werde ein bisschen herumspielen und versuchen, es herauszufinden. Können Sie eine andere gezeigte Sequenz benennen? Das Verhalten von mysql und nano könnte nur eine andere Interpretation der Escape-Sequenzen sein, die scheinbar eingegeben werden.
Schließlich stellt sich die Frage, woher diese Tastatureingaben stammen. Verwenden Sie zufällig einen Laptop, der z. B. die Hintergrundbeleuchtung mithilfe einer proprietären Software automatisch steuert? Ich habe einige seltsame vorinstallierte Software gesehen, die die Tastendrücke emuliert, anstatt die API zu verwenden. Möglicherweise möchten Sie so etwas wie inputlog für sich selbst verwenden.
quelle
~
(und einen Beeb hört), wenn tatsächlich so etwas\e[3~
gesendet wird.~
das Anzeigen einer Single keine Fluchtsequenz anzeigt.)Ich benutze die Option -key: 07 in der Kommandozeile, um caffiene zu starten. Scheint das Putty-Problem zu stoppen.
Legen Sie dies einfach in eine Fledermausdatei
caffeine.exe-Schlüssel: 07
quelle
caffeine.exe -key:0E
(siehe meine Antwort unten). Scheint gut mit Windows (8,1 64-Bit) zu funktionieren und Putty ignoriert es glücklich :)Jemand in Cisco-Foren schlägt vor, den Parameter für die Konsolengeschwindigkeit zu ändern, um dieses Problem zu beheben.
http://www.dslreports.com/forum/r27090677-HELP-Cisco-1800-garbled-output-in-putty
Sie haben definitiv alle Variationen der Konsolengeschwindigkeit in Putty ausprobiert, wie in 1 erwähnt ?
Hinweis: Wenn die Baudrate nicht der Standardrate entspricht, werden auf der CLI ungerade Zeichen angezeigt. Überprüfen Sie Tabelle1 , um die Baudraten für verschiedene Confreg-Werte festzulegen.
quelle
Ich hatte auch das gleiche Problem und fand, dass caffeine.exe tatsächlich das Problem war. Zuerst dachte ich, es könnte nicht durch caffeine.exe verursacht werden, da ich dies für mehr als 2 Jahre auf meinem alten Laptop verwendete. Ich habe versucht, caffeine.exe -useshift zu ändern, aber das hat ^ C gesendet. Ich habe ein anderes Programm gefunden, Mouse Jiggler, das den Bildschirmschoner fernhält, aber in meinen Putty-Sitzungen keine Escape-Sequenzen mehr sendet.
quelle
Die bessere Lösung ist, die Einstellungen in Ihrer Kitt-Sitzung so zu konfigurieren, dass Caffine sie nicht beeinträchtigt.
Wählen Sie in Putty unter Terminal Keyboard die Option SCO. Ändern Sie in Putty unter Terminal Bell die Aktion in None (um das Glockenspiel auszuschalten).
Caffine wird es trotzdem tun und Ihre Kitt-Sitzung nicht stören. (Ich benutze keine Fn-Tasten während einer Putty-Sitzung, daher weiß ich nicht, was passiert, wenn Sie Fn-Tasten verwenden möchten.)
quelle
2017-09-20: Die Zeicheninjektion wurde behoben, indem Koffein mit "caffeine.exe -useshift -noicon" im Taskplaner gestartet wurde, der bei der Anmeldung ausgelöst wurde. Kein Symbol, keine Zeichen mehr in meinen Mintty / Bash-Sessions. Das war so nervig. Vielen Dank an alle für Ihre Hinweise.
quelle