Beenden Sie die serielle Schnittstelle der Bildschirmüberwachung

20

Ich verwende screen /dev/tty-MyDevice, um den Verkehr auf meiner seriellen Schnittstelle zu untersuchen.

Durch Drücken von Ctrl+ Dwird der Bildschirm nicht beendet.

Was muss ich tun, um es zu beenden?

Walross die Katze
quelle

Antworten:

24

Verwenden Sie (normalerweise ) den Befehl zum Beenden des Bildschirmsctrl-A \ .

aecolley
quelle
Strg + a Strg + - ergibt einen leeren Bildschirm, Strg + a Strg + c ergibt einen neuen Bildschirm, den Strg + D dann wie alle anderen zuvor aufgetretenen Bildschirme verlassen kann.
Walross the Cat
2
Ups, Markdown hat mein "ctrl- \" in "ctrl-" verwandelt. Fest.
aecolley
8
Es funktionierte als Strg-A \ (das ist Strg-A und dann einfach \ ohne Strg). Seltsamerweise enthält der bereitgestellte Link eine Strg-Taste für \.
Niels
Diese Art von Funktion funktioniert, aber wenn Sie eine Verbindung zu einer seriellen QEMU-Pty herstellen, wird diese Funktion wirklich beendet. Das bedeutet, dass ich danach keine Verbindung mehr herstellen kann. Mit Picocom kann ich die serielle Verbindung einfach beenden und später wieder herstellen.
Maxschlepzig
8

Ich führe alle meine Terminals in einem Bildschirm aus und verwende manchmal auch den Bildschirm, um eine Verbindung zur seriellen Schnittstelle herzustellen. Wenn Sie sich screen /dev/ttyUSB0innerhalb des Bildschirms befinden, wird in Ihrer aktuellen Sitzung nur ein neues Fenster und kein neuer untergeordneter Bildschirm angezeigt.

Drücken Sie Ctrl-A kin diesem Fall, um nur das aktuelle Fenster und nicht den gesamten Bildschirmvorgang und die anderen Fenster damit zu beenden. Dies ist der Befehl zum Beenden des Fensters.

arantius
quelle
7

Obwohl die Antwort von aecolley normalerweise funktioniert, hat sie bei mir nicht funktioniert (könnte an der isländischen Tastatur und dem isländischen Gebietsschema liegen, bezweifle es aber irgendwie). In dieser Situation können Sie zu einer anderen Konsole gehen und screen -lsdie Bildschirmsitzungsnummer ausführen und notieren. Die Ausgabe sollte ungefähr so ​​aussehen:

There is a screen on:
            6254.tty2.hostname           (Attached)
1 Socket in /var/run/screen/S-root

Die Bildschirmsitzungsnummer ist dann 6254.

Anschließend können Sie den folgenden Befehl ausführen, um diese Bildschirmsitzung zu schließen: screen -X -S 6254 quit

ojs
quelle
1

Für mich stellte sich heraus, dass ich mich versehentlich vom Linux-Benutzerkonto abgemeldet hatte und nicht von dem System, das ich über die serielle Schnittstelle kontrollierte. Sobald ich in, alle normalen protokolliert zurück screenBefehle wie Ctrl+ a, kbegann wieder zu arbeiten.

Wenn Sie darüber hinaus ein neues screenFenster ( Ctrl+ a, c), ein anderes TTY ( Ctrl+ Alt+ F1..12) oder eine SSH-Sitzung öffnen können , können Sie pkill screenoder ausführen kill <PID of screen>.

Drew Chapin
quelle