Screen

Aus UUGRN
Version vom 31. Dezember 2009, 01:13 Uhr von Ph3-der-loewe (Diskussion | Beiträge) (dieverse kleine korrekturen, innerwikilinks)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

screen ist ein nützliches Tool für Textterminal-Sessions, etwa ssh-Logins oder serielle Verbindungen. Wird so eine Verbindung unterbrochen, etwa durch den berühmten 24h-Disconnect bei DSL, beendet sich auch das in dieser Sitzung laufende Programm auf dem Remotehost. Screen stellt eine Umgebung zur Verfügung, die Programme weiterlaufen lässt. Darüber hinaus kann man innerhalb einer Session mehrere Terminals aufmachen und zwischen Ihnen umschalten.

Dieser Artikel soll nur die allerwichtigsten Funktionen zeigen, die vollständige Dokumentation ist die manpage screen(1).

Aufrufparameter[Bearbeiten]

Option Bedeutung Wirkung
-d detach Trennt die Screen-Session von einem anderen Terminal. Ist erforderlich, um eine Session rüber zu holen.
-r reattach Verbindet eine im Hintergrund liegende Screen-Session mit dem aktuellen Terminal. Nützlich in Verbindung mit -d.
-R reattach Verbindet eine vorhandene Session oder legt sie neu an.

Beispiele[Bearbeiten]

neue Screen-Session starten
$ screen
Screen-Session von einem anderen Terminal rüberholen
$ screen -dr
Screen-Session egal wie rüberholen und andere Remote-Shell ausloggen oder falls nicht vorhanden dann neu starten
$ screen -DR

Wichtige Funktionen[Bearbeiten]

Standardmäßig werden alle Hotkeys über Strg-A' / Ctrl-A bzw. ^A eingeleitet. Der eigentliche Hotkey wird nach ^A gedrückt.

Key Aktion
c Neues Fenster öffnen
0-9 zu Fenster Nummer n wechseln
n zum naechsten Fenster wechseln
" Fenster auswählen
N aktive Fensternummer anzeigen
w Fensterliste anzeigen
? alle Hotkeys anzeigen
S Das Terminal in 2 Bereiche splitten.
ǀ Das Terminal vertikal splitten (ab Version 4.00.03jw4 (FAU) 2-May-06)
Ctrl-Tab wechseln in den "neuen Bereich" nach dem splitten
: der Commandline-Modus. Mit resize -10 macht man den aktiven Bereich um 10 Zeilen kleiner.
A dem Fenster einen Namen zuweisen

Optionen für die ~/.screenrc[Bearbeiten]

Eine Beispiel-Session von GNU-Screen

In der ~/.screenrc kann der User seine eigenen Einstellungen vornehmen. Folgende Einträge machen das Leben leichter:

Hiermit kann man die nervige Startmeldung loswerden
startup_message off
Wenn man im "Split-Window-Modus" arbeitet kann man hiermit ein angenehmeres Farbschema einstellen
caption string '%?%F%{.c.}%?%3n %t %?[%h]%?:%{= .kw}'
Die Anzahl der Fenster und deren Benennung konstant anzeigen
hardstatus alwayslastline "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H  %d/%m %c"
Dito, aber mit vollem Datum und loadavg vom aktuellen Host
hardstatus alwayslastline "%{Yb}%-w%{} %{kr} %n %f %t %{-} %+w %=%H %{kg} %l %{-} %Y/%m/%d %c "

0 bash    1 $ bash    2 bash        notebook  0,04 0,10 0,07  2008/03/25  1:44 

Das nervige C-a x loswerden (lock screen). Stört auf Remote-Shells bei pubkey-only Login...
bind x