Ich kann in amazon ec2 (Amazon Linux) kein e mit kleinerem Gehäuse eingeben


16

Nach ein paar Tagen Betrieb mit meinem neuen ec2-Build passiert Folgendes:

  1. Ich logge mich in SSH ein, alles ist in Ordnung, ich mache meine Codierung
  2. Ich kehre am nächsten Tag zurück und logge mich in SSH ein
  3. Ich kann kein niedrigeres Gehäuse emehr eingeben - ich erhalte die Fehlermeldung, wenn ich es eingebe
  4. Ich versuche, von einem anderen Computer zu ssh, das gleiche Problem
  5. Ich starte den Server neu, das gleiche Problem
  6. Ich öffne nanooder viund efunktioniert gut, nur nicht in bashodersh
  7. Ich beende den Server, erstelle einen neuen, installiere von Grund auf neu, ein paar Tage später passiert es wieder

Das ist verblüffend! Wo beginne ich überhaupt mit der Problembehandlung?

Meine lokalen Computer-Setups:

  • Windows XP oder 7
  • putty (spätestens) oder cygwin / openssh

Das EC2-Setup

Ausgabe von, stty -awährend ich ein nicht tippen kanne

sh-4.1$ stty -a
speed 38400 baud; rows 30; columns 95; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -cdtrdsr
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany
-imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

Für den Fall, dass es jemand anderem bei einem ähnlichen Problem hilft, habe ich ein Skript (mit dem Namen sub) erstellt, um E mit Groß- und Kleinschreibung in E mit Kleinschreibung umzuwandeln, und dann den Befehl zurückzusenden. Dann starte ich es in backticks um einen eauf die Kommandozeile zu bekommen :

#!/bin/sh
echo ${@//E/e}

> `sub Emacs /Etc/profilE`

AKTUALISIERUNG

  1. Dies bricht für alle Benutzer
  2. Nur in Bash (csh funktioniert einwandfrei)
  3. Nur im Emacs-Bearbeitungsmodus

Ich habe einen Chatroom erstellt, um dieses Problem zu diskutieren und die Lösung zu verbessern.


1
stty -aposte die Ausgabe von auf dem ec2-Server, wenn es wackelig wird
MikeyB

1
Gibt es etwas Lustiges in / etc / profile, ~ / .profile oder ~ / .bashrc? Kannst du es mit einem anderen Benutzer versuchen? Entweder hat sich das geändert, oder vielleicht wurde Ihre Tastaturzeichentabelle geändert - möglicherweise während eines Updates?
Thinice

1
Wenn du resetgefolgt von stty sanerennst, verschwindet das Problem dann?
Voretaq7

1
@ voretaq7 - nein, aber ich bin mir nicht ganz sicher, was es bedeutet, diese von einem Skript aus auszuführen (natürlich kann ich sie nicht von der CLI aus ausführen, da sie eFolgendes enthalten :( Ist in meinem Skript etwas erforderlich, um zu sagen, dass dies zutrifft? meine Shell-Sitzung "?
Kato

3
Suchen Sie auch in ~/.inputrcund /etc/inputrcnach unterbrochenen Readline-Tastenkombinationen.
Sergey Vlasov

Antworten:


21

Sie haben fälschlicherweise gesagt:

export EDITOR=/usr/bin/emacs

in deine /etc/inputrc. Dies ordnet den Buchstaben 'e' überhaupt nichts zu.

Entfernen Sie das und Sie sollten in Ordnung sein.


1
Vielen Dank für die Hilfe! Ich muss daran denken, die Leute nicht programmieren zu lassen, während ich trinke (
Kato

5
Kann jemand erklären, warum das Setzen einer Umgebungsvariablen den Buchstaben "e" bricht?
Russell Borogove

3
/etc/inputrcist NICHT für Umgebungsvariablen. Es ist ein bestimmtes Eingabeformat, das von readline gelesen wird.
MikeyB
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.