Ich habe ein nerviges Problem mit Minicom, das an eine serielle Konsole eines Yocto Linux-Computers angeschlossen ist.
Der Befehl, den ich eingebe, wird nach dem 80. Zeichen in derselben Zeile umbrochen. Es wird sehr unpraktisch, damit zu arbeiten. Alles, was ich am Anfang der Zeile eingegeben habe, wird durch die letzten Zeichen dieser Zeile überschrieben.
Eine SSH-Verbindung zu demselben Computer funktioniert einwandfrei. Nach den 80. Zeichen ssh gehe zur nächsten Zeile.
Dies ist die stty-Einstellung:
stty -a
speed 115200 baud; rows 24; columns 80; 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
-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
Die Option -w von minicom hat keine Auswirkung. Immer noch das gleiche Verhalten
minicom -w
Der resize
Befehl ist auf diesem Computer nicht verfügbar. Zu welchem Paket gehört es? Vielleicht kann ich es installieren.
Wie kann ich dieses Verhalten beheben?
terminal
tty
serial-console
minicom
Oliver G.
quelle
quelle
TERM
Umgebungsvariable bei Verbindung überminicom
?stty -a
ausgeführt im Innerenminicom
minicom
mit-w
Hilfe?putty
anstelleminicom
als serielles Terminalprogramm die Terminaleinstellung "impliziter LF in jedem CR" aktiviere, ist das Verhalten weg.Antworten:
Wenn Sie über eine serielle Leitung verbunden sind, kann das System die Fenstergröße nicht mit dem Terminal aushandeln (NAWS - Negotiate About Window Size ist RFC 1073 ). In diesem Fall können Sie entweder einen Systemstandard für die Größe oder sogar nur Nullen erhalten. Beides würde den Zeileneditor der Shell verwirren, der die tatsächliche Breite des Terminals kennen muss, um mit seiner Umlauffunktion arbeiten zu können.
bash wird verwirrt und denkt, dass es aufgrund der Autowrap-Funktion des Terminals umbrochen wurde, und bewegt sich im Rahmen der Zeilenbearbeitung / -anzeige an den Anfang der aktuellen (falschen) Zeile.
Um dieses Problem zu umgehen, können die meisten Terminals (einschließlich Minicom - siehe Quelle ), die Sie mit einer seriellen Schnittstelle verwenden würden, auf die Escape-Sequenz für den Cursorpositionsbericht reagieren, die zum Ermitteln
resize
der Fenstergröße verwendet wird - und als Nebeneffekt die Idee des Systems festlegen Wie groß ist Ihr Terminalfenster?quelle
Das hat bei mir funktioniert. Die Ziel-Shell muss eingestellt werden, um die Fenstergröße zu überprüfen und auf die richtige Größe Ihrer Konsolen-GUI einzustellen. Nach der seriellen Verbindung mit Putty oder Minicom:
quelle
resize
`"