Eines der am häufigsten verwendeten Werkzeuge im Web-Entwicklungsprozess ist sicherlich das Terminal. Während Sie an einem Projekt arbeiten, befinden Sie sich oft in der Position, das Terminal mit mehreren geöffneten Registerkarten zu verwenden, eine zum Starten eines lokalen Webservers, eine zweite Registerkarte zum Verwalten der Datenbank, eine andere zum Kopieren von Dateien usw. Dies kann schnell unübersichtlich und schwer zu handhaben sein. Eine Lösung für dieses Problem, die für mich gut funktioniert, ist der Terminalmultiplexer tmux.
tmux
ist ein Terminal-Multiplexer: Ermöglicht die Erstellung, den Zugriff und die Steuerung einer Reihe von Terminals, von denen jedes ein eigenes Programm ausführt.
Die obige Definition aus der tmux
Website ist klar: Von einem Terminalfenster aus können wir eine Reihe anderer Terminals starten und steuern und in jedem von ihnen eine andere Anwendung oder eine andere Instanz einer Anwendung ausführen.
tmux
wird auf einem Client-Server-Modell entwickelt. Dies bringt das Konzept von Sitzungen ins Spiel. Eine Sitzung wird auf dem Server gespeichert, der die Darstellung eines Fensters enthält. Jedes Fenster kann mit mehreren Sitzungen verbunden und zwischen diesen verschoben werden.
Auf der anderen Seite können an jede Sitzung mehrere Clients angehängt werden. So können sich ein oder mehrere Benutzer mit einem verbinden tmux
Sitzung von verschiedenen Computern aus und sie teilen die gleichen Informationen im Fenster. Dies ist äußerst hilfreich beim Unterrichten oder bei der Zusammenarbeit, da die Benutzer a gemeinsam nutzen tmux
Sitzung sehen die gleichen Informationen in ihren Terminalfenstern.
Verbindung zu einem tmux
Die Sitzung wird ausgeführt, indem die Anwendung mit dem folgenden Befehl gestartet wird:
tmux hinzufügen
Wenn ein Benutzer die Terminalfreigabefunktion beenden möchte, wird der folgende Befehl verwendet:
tmux trennen
tmux
läuft unter Linux und Mac. Zum Zeitpunkt des Schreibens dieses Artikels ist mir keine Windows-Version der Anwendung bekannt.
Für die meisten Linux-Distributionen gibt es ein Paket in ihren Repositorys:
Bei Arch (das ich verwende) geht es bei der Installation einfach darum, den folgenden Befehl auszuführen:
Sudo Pacman -S TMux
Nach der Installation können Sie beginnen tmux
durch die Ausgabe des Befehls tmux
in einem Terminalfenster. Wenn Sie möchten, dass es für jede Terminalsitzung automatisch ausgeführt wird, ist ein kleines Konfigurationsstück erforderlich:
tmux
wie im Screenshot unten: Wenn Sie mit einem Mac arbeiten, wird iTerm2 mitgeliefert tmux
installiert, und um es zu starten, sollten Sie den Befehl ausgeben: tmux
.
Wenn Sie nach der Installation ein Terminalfenster starten, werden Sie nur das Vorhandensein einer Statuszeile am unteren Bildschirmrand bemerken:
Lassen Sie uns einen Blick auf die häufigsten Funktionen werfen. Eine Liste der vollständigen Funktionen finden Sie in den Links am Ende dieses Artikels.
Oder mit anderen Worten, das Hauptfenster teilen. Zunächst muss ich das jeweils sagen tmux
Befehl wird mit der folgenden Tastenkombination vorangestellt:
. Dies kann geändert werden, aber wir werden lernen, wie man es konfiguriert und anpasst tmux
später.
Um ein Fenster vertikal zu teilen (oder in rechten und linken Bereichen), sollte der folgende Befehl verwendet werden:
%
Um das Fenster in horizontale Fenster zu teilen, können Sie Folgendes verwenden:
"
Das Ergebnis sollte folgendermaßen aussehen:
Um den Cursor von einem Fenster zum anderen zu bewegen (Fenster aktivieren), werden die Pfeiltasten verwendet. Der Befehl sieht so aus:
[Auf, Ab, Rechts, Links]
Wenn Sie zum zuvor aktiven Bereich wechseln möchten, können Sie den folgenden Befehl verwenden:
;
Wenn Sie mit der Position eines Bereichs nicht zufrieden sind, können Sie die Bereiche mit dem folgenden Befehl drehen:
Nach dem Erstellen können Sie die Größe jedes Bereichs in einem einzigen Zellschritt ändern.
oder in fünf Zellen Schritt mit:
Wenn Sie das aktuelle Fenster schließen möchten, können Sie Folgendes verwenden:
x
Manchmal möchten Sie möglicherweise ein anderes Fenster erstellen, um beispielsweise an einem anderen Projekt zu arbeiten. Dieses Fenster enthält möglicherweise einen völlig anderen Satz von Fenstern mit unterschiedlichen Programmen in jedem von ihnen. Geben Sie dazu den folgenden Befehl ein:
c
Wenn Sie dann zum nächsten Fenster wechseln möchten, können Sie Folgendes verwenden:
n
Sie können zum vorherigen Fenster wechseln, indem Sie Folgendes verwenden:
p
Oder Sie wählen das Fenster interaktiv mit:
w
Um das aktuell geöffnete Fenster zu schließen, verwenden Sie:
&
Angenommen, Sie haben einen Befehl auf dem Terminal ausgegeben und die Ausgabe des Befehls passt nicht in einen Bildschirm. Sie müssen also nach oben scrollen, um die gesamte Ausgabe zu sehen. Wenn Sie versuchen, die Oben Mit dieser Taste können Sie nicht nach oben scrollen, da nur die Befehlsübersicht angezeigt wird. Um auf dem Bildschirm nach oben zu scrollen, verwenden Sie den folgenden Befehl:
[
Drücken Sie dann eine der folgenden Tasten: Oben
, Nieder
, PgUp
oder PgDn
nach oben oder unten scrollen.
In diesem Modus können Sie auch Text aus dem Verlauf kopieren und ihn dann einfügen mit:
]
Um das zu beenden einfügen
Modus, einfach drücken Esc.
Nun gibt es viele andere Befehle, die an verschiedene Tasten gebunden sind. Sie können alle Schlüsselbindungen auflisten, indem Sie Folgendes ausgeben:
?
tmux
ist hoch konfigurierbar. Die Konfigurationsdatei ist entweder /etc/tmux.conf
für systemweite Einstellungen oder (empfohlen) ~ / .tmux.conf
für benutzerspezifische Einstellungen.
Eine der ersten Änderungen, die die meisten Benutzer ändern, ist die Zuordnung des Präfixschlüssels (seit
scheint nicht so praktisch zu sein). Die meisten Benutzer ändern es in
. Dies kann wie folgt gemacht werden:
set -g Präfix C-a Unbindung C-b Bindung C-a Sendepräfix
Das -G
Die Option im ersten Befehl teilt tmux mit, dass dies eine globale Option ist. Dies bedeutet, dass diese Option für alle Fenster und Sitzungen festgelegt ist.
Einige Benutzer bevorzugen Vi oder Emacs-Bindungen für die wichtigsten Aktionen. Dies geschieht mit:
set -g status-keys vi setw -g modustasten vi
Das Setw
Befehl, legt die Option für das Fenster fest (wirkt sich auf alle Fenster eines Fensters aus).
Sie können die Statuszeile in verschiedenen Konfigurationen konfigurieren: Sie können sie ein- oder ausschalten, Hintergrund- und Vordergrundfarbe ändern, Sie können ändern, welche Informationen in der Statuszeile angezeigt werden usw..
Geben Sie den folgenden Befehl aus, um die Statusleiste zu deaktivieren:
-g Status ausschalten
Oder versuchen Sie es mal so:
set -g status-bg blau set -g status-fg weiße setw -g status-left #H: #S um #W: #T
…, Der den Hintergrund der Statuszeile in blau, die Textfarbe in Weiß ändert und links von der Statusleiste den Hostnamen von localhost anzeigt, gefolgt von einem Doppelpunkt und dem Sitzungsnamen, gefolgt von der Zeichenfolge 'at' und dem Fensternamen a Doppelpunkt und schließlich der Fenstertitel.
Sie können die Statuszeile auch unten oder oben im Fenster anzeigen:
set -g status-position [unten | oben]
Weitere Informationen zur Konfiguration und zu anderen Konfigurationsoptionen finden Sie im Abschnitt Optionen des Handbuchs.
Ich hoffe, Sie haben diese Einführung gefunden tmux
hilfreich bei der Verbesserung Ihres Terminal-Workflows. Ich habe hier nur einige Befehle vorgestellt, die ich am häufigsten benutze. Wenn Sie mehr erfahren möchten, stehen mehrere Ressourcen zur Verfügung. Ich empfehle sehr:
tmux
auf Arch Wiki