Manchmal kommen sie wieder – screen

Zu Befehl

01.01.2001
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
 

Ä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.
  • 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.
  • Viele Sitzungen in einem Terminal verwalten mit Tmux
    Mit dem Multiplexer Tmux rüsten Sie ein einfaches Terminal um Fähigkeiten auf, die es fast zu einem Windowmanager machen.
Kommentare

Infos zur Publikation

title_2014_09

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

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

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 4 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...