Wie man Multitasking an der Linux-Kommandozeile mit Screen durchführt
Ich gebe es im Voraus zu - es ist peinlich spät für mich, den Bildschirm entdeckt zu haben. Freunde und Kollegen haben es mir seit Jahren vorgeschlagen, aber erst in letzter Zeit hatte ich einen konkreten Bedarf dafür. Jetzt wünschte ich, ich hätte es die ganze Zeit gehabt. Kurz gesagt, Bildschirm gibt Ihnen das Äquivalent der "Arbeitsbereiche", die Sie in Gnome, KDE und anderen Desktopumgebungen finden, aber für die Befehlszeile. Es mag nicht viel klingen, aber wie das grafische Äquivalent beginnt man nach einigen Anwendungen die Kraft zu sehen. Heute werden wir einige Bildschirmgrundlagen behandeln, die für Ihren Heim-Desktop nützlich sind, aber besonders nützlich, wenn Sie Fernzugriffs-Tools wie SSH verwenden.
Überblick
Nehmen wir an, Sie befinden sich in der Befehlszeile und Sie führen einen langen Prozess wie eine Kernel-Neukompilierung aus. Bei manchen Maschinen kann das bis zu einer Stunde dauern. Ein durchschnittlicher Benutzer könnte sitzen und warten. Ein cleverer Benutzer kann den Job im Hintergrund anzeigen oder die Funktionstasten verwenden, um eine neue TTY-Anmeldung zu öffnen. Ein Bildschirmbenutzer hat jedoch bereits vorausgedacht. Wäre der Bildschirm zuerst gestartet worden (oder automatisch - mehr dazu später), würde dieser Benutzer einfach die richtige Tastenkombination drücken, um eine neue Shell zu erstellen. Und noch eine und noch eine, falls gewünscht. Jeder arbeitet unabhängig von den anderen und alle Ausgaben bleiben auf der entsprechenden Bildschirmsitzung .
Einige von euch, die gerne die ALT-STRG- (F1 bis F4) Methode benutzen, mögen sich fragen, wie der Bildschirm besser ist. Mehrere Gründe, von denen einige wären:
- Nicht auf die Anzahl der Funktionstasten beschränkt
- Möglichkeit, jeden Bildschirm zu benennen
- Möglichkeit, Bildschirmsitzungen zu trennen / neu anzuhängen
- "Statusleiste" Unterstützung
- Freigegebene Bildschirme für mehrere Benutzer
- Geteilte Bildschirme
Viel mehr.
Anfangen
Da der Bildschirm in fast jeder größeren Linux-Distribution enthalten ist, wird in diesem Handbuch nicht auf die Installation eingegangen. Der einfachste Weg zum Starten des Bildschirms besteht darin, einfach ein Terminal zu öffnen und zu tippen
Bildschirm
Sie könnten einen Begrüßungsbildschirm erhalten, aber ansonsten bemerken Sie möglicherweise nichts anderes. Es sieht einfach wie ein normales Terminal aus, oder?
Was Sie tatsächlich sehen, ist die Standardbildschirmsitzung, und Sie können es sich als eine Ebene über Ihrer Shell vorstellen. Wenn Sie die Sitzung beenden oder trennen, kehren Sie zu Ihrer normalen, bildschirmlosen Shell zurück.
Hinzufügen und Navigieren von Bildschirmen
Für den Anfang müssen Sie eine wichtige Schlüsselkombination kennen. Dies ist die "magische" Tastenkombination, mit der Sie auf alle einzelnen Befehle zugreifen können. Was ist diese magische Kombination? Strg-A . Zum Beispiel wird Strg-A gefolgt von c einen neuen Bildschirm erstellen. Strg-A und n bewegen sich zum nächsten Bildschirm in der Zeile (falls vorhanden). Das Folgende enthält viele der häufigsten Aktionstasten (bei allen Schlüsseln wird zwischen Groß- und Kleinschreibung unterschieden):
- c - Erstellen Sie einen neuen Bildschirm
- n - Zum nächsten Bildschirm wechseln
- p - Zum vorherigen Bildschirm wechseln
- S - Bildschirm in gestapelte Bereiche teilen
- | - Split zu Seite-an-Seite-Regionen (funktioniert möglicherweise nicht auf allen Systemen)
- d - Bildschirm abtrennen
- A - Bildschirmtitel einstellen
Bildschirme anhängen / entfernen
Obwohl es viele gute Anwendungen für den Bildschirm gibt, könnte diese Funktion als "Brot und Butter" bezeichnet werden. Die Fähigkeit, einen Bildschirm loszulassen, ihn laufen zu lassen und ihn später wieder aufzunehmen, ist von unschätzbarem Wert.
Nehmen wir an, Sie betreiben den Minecraft-Server der letzten Woche und er läuft auf einem alten PC unter Ihrem Bett. Normalerweise, wenn Sie beispielsweise Befehle an der Serverkonsole eingeben möchten, müssen Sie die Maschine herausziehen, eine Tastatur und einen Monitor ausgraben, Ihre Befehle ausführen und alles zurückschieben. Wenn die Serversoftware in einer Bildschirmsitzung gestartet wurde, können Sie einfach SSH auf dem Server starten, den Bildschirm erneut anhängen und tun, was Sie brauchen. Wenn Sie fertig sind, trennen Sie den Bildschirm, und der Server läuft weiter, selbst nachdem Sie die SSH-Sitzung beendet haben . Tage / Wochen / Monate später können Sie sich wieder beim Server anmelden und diesen Bildschirm erneut anhängen, um neue Befehle einzugeben.
.screenrc
Schließlich konnten wir den Bildschirm nicht ohne eine kurze Erwähnung der ~ / .screenrc- Datei abdecken . Es gibt viele verschiedene Verwendungsmöglichkeiten für diese Datei, aber da dies ein einführender Leitfaden ist, werden wir nicht alle möglichen Optionen behandeln. Stattdessen weisen wir nur auf die beliebte Hardstatus- Einstellung hin.
Diese Option bietet Ihnen eine fantastische nützliche Informationsleiste, die über alle Bildschirmsitzungen hinweg bestehen bleibt. In der Regel befindet es sich am unteren Rand und enthält Informationen wie Uhrzeit, Hostname und Titel / Nummer des aktuellen Bildschirms.
Sie können Beispiel-Hardstatus-Codes überall im Netz mit Ihrer bevorzugten Suchmaschine finden, aber hier sind ein paar, um Sie zu beginnen.
# 1
hardstatus allystastline hardstatus Zeichenfolge '% {= kG} [% {G}% H% {g}] [% =% {= kw}%?% - Lw%?% {r} (% {W}% n *% f% t%? (% u)%?% {r})% {w}%?% + Lw%?%?% =% {g}] [% {B}% d /% m% {W} % c% {g}] '
# 2
hardstatus allystastline hardstatus Zeichenfolge "% {+ b Rk} (% {- bg} $ LOGNAME @% H% {+ b R}) (% {- bg}% C% a% {+ b R})% {- bg }% n% t% h "
#3
hardstatus allystastline hardstatus Zeichenfolge '% {= M}% H% {= G}% l% =% {= w}% - w% {+ br}% n *% t% {- br}% {w}% + w% =% {c}% d% D% {B}% c '