Zu Befehl

Manchmal kommen sie wieder – screen

Auch wenn sich viele Dinge bequem über grafische Oberflächen wie KDE oder GNOME regeln lassen – wer sein Linux-System richtig ausreizen möchte, kommt um die Kommandozeile nicht herum. Abgesehen davon gibt es auch sonst viele Situationen, wo es gut ist, sich im Befehlszeilendschungel ein wenig auszukennen.

Haben Sie sich schon oft darüber geärgert, dass Sie zwischen vielen Terminals hin- und herschalten mussten, weil Sie mehrere Anwendungen gleichzeitig im Vordergrund laufen lassen wollten? Oder waren Sie sauer, weil ein Prozess, den Sie auf einem Rechner am Arbeitsplatz starten mussten, nicht rechtzeitig zu Feierabend fertig war, Sie aber die Ausgabe des Programms kontrollieren wollten? screen ist ein äußerst mächtiges Tool, das Ihnen viele Aufgaben erleichtern kann.

Bevor Sie das Programm zum ersten Mal starten, schauen Sie am besten nach, welche Umgebungsvariable für TERM (Terminalemulation) gesetzt ist, diese wird nämlich direkt beim Programmaufruf ausgewertet:

huhn@asteroid:~$ echo $TERM
 xterm
 huhn@asteroid:~$ export TERM=vt100
 huhn@asteroid:~$ echo $TERM
 vt100

Die Programmierer von screen weisen in ihrer Dokumentation ausdrücklich darauf hin, dass dieses Tool sich am besten mit vt100 versteht – überprüfen Sie das also am besten vorher. Mit screen können Sie bis zu zehn virtuelle Fenster in einem einzigen Xterm (oder auf der Konsole) simulieren. In all diesen Fenstern können Sie nun Programme laufen lassen – jedes der virtuellen Fenster ist dabei von den übrigen unabhängig. Tippen Sie einfach mal screen – nach einem kurzen Begrüßungstext gibt es den Hinweis, wie es weitergeht:

[Press Space or Return to end.]

Mit der Leertaste treten Sie also ein ins Reich der unendlichen Terminal-Weiten. Es stehen Ihnen eine Reihe von Kommandos zur Verfügung, die alle mit [Strg-a] beginnen: Halten Sie dazu die [Strg]- oder auf englischen Tastaturen die [Ctrl]-Taste gedrückt und tippen Sie [a]. Jetzt wartet das Programm auf die weiteren Befehlseingaben: [Strg-a] [?] gibt beispielsweise eine komplette Übersicht der Tastenbelegung (s. Tabelle 1).

Tabelle 1: Tastenkombinationen im <C>screen<C>

Tastaturkürzel Kommando Bedeutung
[Strg-a] [?] help Listet alle Tastenbelgungen auf.
[Strg-a] [c] screen Öffnet ein weiteres virtuelles Fenster.
[Strg-a] [Leertaste] next Wechselt zum nächsten Fenster, wiederholt man das Kommando, kann man durch alle Fenster "durchlaufen".
[Strg-a] [Strg-a] other Wechselt immer zwischen zwei Fenstern hin und her.
[Strg-a] [0...9] select n Wechselt zu Fenster mit Nr. n.
[Strg-a] [w] windows Zeigt in einer Zeile am unteren Rand für kurze Zeit, wieviel Fenster gestartet sind, das aktuelle wird mit * hervorgehoben.
[Strg-a] [a],[s] oder [q] meta/xoff/xon Sendet ein [Strg-a],[Strg-s] oder [Strg-q] direkt in das Fenster, braucht man für einige Programme (z. B. Emacs), die auch [Strg-a]-Kontrollsequenzen haben
[Strg-a] [x] lockscreen Sperrt den screen – nach einer gültigen Passworteingabe können Sie weiterarbeiten
[Strg-a] [H] log Loggt die Standardausgabe in eine Datei, abhängig von der Nummer des Fensters (1-10) heißt das Logfile screenlog.n, erneuter Aufruf von [Strg-a H] beendet das Mitschneiden
[Strg-a] [Esc] copy Wechselt in den Kopiermodus: Sollte keine Maus zum Markieren von Text vorhanden sein, kann man jetzt mit den Buchstaben h, j, k, l zur gewünschten Stelle auf dem Bildschirm gehen, eine Markierung mit der Leertaste setzen, dann zur nächsten Stelle gehen, wieder die Leertaste drücken, um in die "Zwischenablage" zu speichern. Mit [Strg-a] "]" (also [Strg-A] gefolgt von einer schließenden eckigen Klammer) fügt man den markierten Text übrigens ein, mit [Esc] bricht man die Aktion ab.
[Strg-a] [d] detach "Befreit" den screen, alle darin gestarteten Prozesse laufen weiter, aber das Programm verabschiedet sich vom Terminal: Nun kann man sich ausloggen. Mit screen -r kann der screen wieder aufgerufen werden (ausführliche Erklärung folgt im Text).
[Strg-a] [D] [D] pow_detach "Power Detach" – löst nicht nur den screen los, sondern loggt auch direkt aus dem Terminal aus.
[Strg-a] [K] kill Zerstört den ganzen screen – netterweise gibt es hier eine Sicherheitsabfrage: Really kill this window [y/n]

Out of the blue – screen!

Neben den ganzen Steuerungskommandos innerhalb der Fenster kann man das Programm natürlich auch mit verschiedenen Parametern beim Start versehen. Für den Fall, dass Sie screen mehrmals gestartet haben und nicht mehr wissen, wieviele und ob diese gerade aktiv sind, gibt es die Option -ls (steht für: -list):

huhn@asteroid:~$ screen -list
 There are screens on:
       1200.pts-10.asteroid    (Attached)
       1203.pts-14.asteroid    (Detached)

Hier sehen Sie einmal die Prozess-ID (pid), dann das virtuelle Terminal (tty), in dem der screen gestartet wurde, den Host (asteroid) und als letzte Information, ob er gerade aktiv ("attached") ist oder schlafen gelegt wurde ("detached"). Inaktive screens können mit screen -r [pid.tty.host] wiederbelebt werden. Die Angabe der Prozessnummer und des Terminals sind nur erforderlich, wenn mehrere screens inaktiv sind. Sie können sich die Sache wesentlich erleichtern, wenn Sie der Session direkt am Anfang einen Namen geben: screen -S petronella tauft Ihren screen auf den Namen "petronella". In der Übersicht heißt dieser dann: 1364.petronella – der Name ersetzt also Terminal und Host. Übrigens: Hat sich ein screen-Prozess einmal aufgehängt, können Sie diesen in der Übersicht am Statusflag "dead" erkennen. Sie werden ihn mit dem Parameter screen -wipe elegant los.

Wenn Sie einen schlafengelegten screen wiederbeleben, möchten Sie von Zeit zu Zeit zurückscrollen können, um die letzten Ausgaben laufender Programme zu betrachten. Standard für den Puffer sind 100 Zeilen. Dieses kann man mit Hilfe der Option -h zeilenanzahl ändern. Bei einem screen -h 1000 können Sie nun also 1000 Zeilen zurückgehen. Um sich in diesem Puffer zu bewegen, gibt es eine Reihe von Tastaturkommandos. Dazu begeben Sie sich zunächst in den Copy/Scrollback-Modus (s. Tabelle 1, [Strg-a] [Esc]). Wenn Sie den Editor vi bereits kennen und nutzen, sind Ihnen die Kommandos zur Cursor-Bewegung sicher vertraut. Andernfalls finden Sie in Tabelle 2 eine Kurzreferenz über die Befehle.

Tabelle 2: Die wichtigsten Kommandos zur Navigation im Copy/Scrollback-Modus

Kommando Bewegung
h, j, k, l bewegen den Cursor Zeile für Zeile oder Spalte für Spalte, links, rechts, rauf, runter.
0, $ zum äußersten linken oder rechten Ende der Zeile.
H, L, M bewegt den Cursor in der Spalte links außen nach ganz oben, nach ganz unten oder in die Mitte.
+, - Zeile hoch oder runter.
G springt ans Ende des Puffers.
g springt an den Anfang des Puffers.
w,b,e wortweise springen: zurück, vor und ans Wortende.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Zu Befehl: screen
    Der Desktop, unendliche Weiten – in welchem Terminal war gleich…? Mit dem Programm screen verwalten Sie mehrere virtuelle Konsolen in einem einzigen Terminal-Fenster, lassen Prozesse auf entfernten Servern weiterlaufen (während Sie längst vom System abgemeldet sind) und schauen anderen Benutzern – mit deren Zustimmung – auf die Finger.
  • screen verwaltet Terminalsitzungen
    Mit "screen" starten Sie ein "Terminal im Terminal" und verwalten mehrere Shell-Sitzungen in einem einzigen Fenster. Wie Sie damit effektiver auf der Kommandozeile arbeiten und auf einem entfernten Rechner Prozesse nach dem Abmelden weiterlaufen lassen, zeigt dieser Artikel.
  • Screen
    Machen Sie der Konsole Ihre Aufwartung – anstelle vieler einzelner Terminals verwalten Sie alle wichtigen Kommandozeilenprogramme in nur einem Programmfenster. Wer mag, lädt andere Benutzer zu Besuch ein und schmückt das Fenster ansprechend.
  • Geteilter Ansicht
    Mit Screen verwalten Sie bequem viele Terminalfenster in einer einzigen Sitzung. Vor allem für Admins, die ihr tägliches Werk ohne grafische Umgebung verrichten, bietet ein Terminal-Multiplexer zahlreiche Annehmlichkeiten.
  • Auf allen Schirmen
    Screen erleichtert die Arbeit mit verschiedenen Shells und Konsolentools. Wir zeigen Ihnen Tricks und Kniffe, um mit dem Terminal-Multiplexer noch komfortabler zu arbeiten.
Kommentare

Infos zur Publikation

LU 12/2016: Neue Desktops

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Drucker Epson XP-332 unter ubuntu 14.04 einrichten
Andrea Wagenblast, 30.11.2016 22:07, 0 Antworten
Hallo, habe vergeblich versucht mein Multifunktionsgerät Epson XP-332 als neuen Drucker unter...
Apricity Gnome unter Win 10 via VirtualBox
André Driesel, 30.11.2016 06:28, 2 Antworten
Halo Leute, ich versuche hier schon seit mehreren Tagen Apricity OS Gnome via VirtualBox zum l...
EYE of Gnome
FRank Schubert, 15.11.2016 20:06, 2 Antworten
Hallo, EOG öffnet Fotos nur in der Größenordnung 4000 × 3000 Pixel. Größere Fotos werden nic...
Kamera mit Notebook koppeln
Karl Spiegel, 12.11.2016 15:02, 2 Antworten
Hi, Fotografen ich werde eine SONY alpha 77ii bekommen, und möchte die LifeView-Möglichkeit nu...
Linux auf externe SSD installieren
Roland Seidl, 28.10.2016 20:44, 1 Antworten
Bin mit einem Mac unterwegs. Mac Mini 2012 i7. Würde gerne Linux parallel betreiben. Aber auf e...