GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Beispiele für Tmux-Befehle zum Verwalten mehrerer Terminalsitzungen unter Linux

Wir haben bereits gelernt, wie man GNU Screen verwendet um mehrere Terminalsitzungen zu verwalten. Heute werden wir ein weiteres bekanntes Befehlszeilenprogramm namens "Tmux" sehen , das auch zur Verwaltung mehrerer Terminalsitzungen verwendet wird. Diese Anleitung erklärt, was Tmux ist und die Verwendung von Tmux-Befehlen mit Beispielen in Linux.

1. Was ist Tmux?

Ähnlich wie GNU Screen ist Tmux auch ein Terminal-Multiplexer, der es uns ermöglicht, eine Reihe von Terminal-Sitzungen zu erstellen und mehr als ein Programm oder Prozesse gleichzeitig in einem einzigen Terminal-Fenster auszuführen.

Tmux ist ein kostenloses, quelloffenes und plattformübergreifendes Programm, das Linux, OpenBSD, FreeBSD, NetBSD und Mac OS X unterstützt.

2. Tmux unter Linux installieren

Tmux ist in den offiziellen Repositories der meisten Linux-Distributionen verfügbar.

Um Tmux unter Alpine Linux zu installieren, führen Sie Folgendes aus:

$ sudo apk add tmux

Führen Sie unter Arch Linux und seinen Varianten wie EndeavourOS und Manjaro Linux den folgenden Befehl aus, um es zu installieren.

$ sudo pacman -S tmux

Unter Debian, Ubuntu, Linux Mint, Pop_OS!:

$ sudo apt-get install tmux

Unter Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux:

$ sudo dnf install tmux

Oder,

$ sudo yum install tmux

Unter SUSE/openSUSE:

$ sudo zypper install tmux

Nun, wir haben gerade Tmux installiert. Lassen Sie uns fortfahren und einige Beispiele zur Verwendung von Tmux sehen.

3. Verwendung von Tmux-Befehlen mit Beispielen

Die Standard-Präfix-Verknüpfung für alle Befehle in Tmux ist Ctrl+b . Denken Sie einfach an diese Tastenkombination, wenn Sie Tmux verwenden.

Vorsicht: Das Standardpräfix für alle Screen Befehle ist Strg+a .

3.1. Tmux-Sitzungen erstellen

Um eine neue Tmux-Sitzung zu erstellen und daran anzuhängen, führen Sie den folgenden Befehl im Terminal aus:

$ tmux

Oder,

$ tmux new

Sobald Sie sich in der Tmux-Sitzung befinden, sehen Sie unten einen grünen Balken wie im Screenshot unten gezeigt.

Es ist sehr praktisch zu überprüfen, ob Sie sich in einer Tmux-Sitzung befinden oder nicht.

3.2. Trennen von Tmux-Sitzungen

Um sich von einer aktuellen Tmux-Sitzung zu trennen, drücken Sie einfach Ctrl+b und d . Sie müssen nicht beide Tastenkombinationen gleichzeitig drücken. Drücken Sie zuerst "Ctrl+b" und drücken Sie dann "d" .

Sobald Sie von einer Sitzung getrennt sind, sehen Sie eine Ausgabe wie die folgende.

[detached (from session 0)]

3.3. Benannte Sitzungen erstellen

Wenn Sie mehrere Sitzungen verwenden, werden Sie möglicherweise verwirrt, welche Programme in welchen Sitzungen ausgeführt werden. In solchen Fällen können Sie einfach benannte Sitzungen erstellen.

Wenn Sie beispielsweise einige Aktivitäten im Zusammenhang mit dem Webserver in einer Sitzung ausführen möchten, erstellen Sie einfach die Tmux-Sitzung mit einem benutzerdefinierten Namen, zum Beispiel "webserver" (oder einen beliebigen Namen Ihrer Wahl).

$ tmux new -s webserver

Hier ist die neue benannte Tmux-Sitzung.

Wie Sie im obigen Screenshot sehen können, lautet der Name der Tmux-Sitzung webserver . Auf diese Weise können Sie leicht erkennen, welches Programm in welcher Sitzung ausgeführt wird.

Drücken Sie zum Trennen einfach Ctrl+b und d .

3.4. Tmux-Sitzungen auflisten

Um die Liste der offenen Tmux-Sitzungen anzuzeigen, führen Sie Folgendes aus:

$ tmux ls

Beispielausgabe:

Wie Sie sehen können, habe ich zwei offene Tmux-Sitzungen.

3.5. Getrennte Sitzungen erstellen

Manchmal möchten Sie vielleicht einfach eine Sitzung erstellen und nicht automatisch daran anhängen.

So erstellen Sie eine neue getrennte Sitzung mit dem Namen "ostechnix" , ausführen:

$ tmux new -s ostechnix -d

Der obige Befehl erstellt eine neue Tmux-Sitzung namens "ostechnix", wird aber nicht daran angehängt.

Sie können mit tmux ls überprüfen, ob die Sitzung erstellt wurde Befehl:

3.6. Anhängen an Tmux-Sitzungen

Sie können an die zuletzt erstellte Sitzung anhängen, indem Sie diesen Befehl ausführen:

$ tmux attach

Oder,

$ tmux a

Wenn Sie eine Verbindung zu einer bestimmten benannten Sitzung herstellen möchten, z. B. "ostechnix", führen Sie Folgendes aus:

$ tmux attach -t ostechnix

Oder kurz:

$ tmux a -t ostechnix

3.7. Tmux-Sitzungen beenden

Wenn Sie fertig sind und keine Tmux-Sitzung mehr benötigen, können Sie sie jederzeit mit dem Befehl beenden:

$ tmux kill-session -t ostechnix

Drücken Sie Ctrl+b, um zu beenden, wenn Sie angehängt sind und x . Drücken Sie "y" um die Sitzung zu beenden.

Sie können überprüfen, ob die Sitzung mit tmux ls geschlossen wurde Befehl.

Führen Sie Folgendes aus, um den Tmux-Server zusammen mit allen Tmux-Sitzungen zu beenden:

$ tmux kill-server

Vorsichtig sein! Dadurch werden alle Tmux-Sitzungen ohne Vorwarnung beendet, auch wenn innerhalb der Sitzungen Jobs ausgeführt werden.

Wenn keine Tmux-Sitzungen ausgeführt wurden, sehen Sie die folgende Ausgabe:

$ tmux ls
no server running on /tmp/tmux-1000/default

3.8. Tmux-Sitzungsfenster aufteilen

Tmux hat eine Option, um ein einzelnes Tmux-Sitzungsfenster in mehrere kleinere Fenster aufzuteilen, die als Tmux-Fenster bezeichnet werden .

Auf diese Weise können wir verschiedene Programme auf jedem Fenster ausführen und mit allen gleichzeitig interagieren.

Jeder Bereich kann in der Größe geändert, verschoben und geschlossen werden, ohne die anderen Bereiche zu beeinflussen. Wir können ein Tmux-Fenster entweder horizontal oder vertikal oder beides gleichzeitig teilen.

3.8.1. Fenster horizontal teilen

Um einen Bereich horizontal zu teilen, drücken Sie Ctrl+b und " (einfaches Anführungszeichen).

Verwenden Sie die gleiche Tastenkombination, um die Bereiche weiter zu teilen.

3.8.2. Fenster vertikal teilen

Um einen Bereich vertikal zu teilen, drücken Sie Ctrl+b und % .

3.8.3. Fenster horizontal und vertikal teilen

Wir können ein Fenster auch gleichzeitig horizontal und vertikal teilen. Sehen Sie sich den folgenden Screenshot an.

Zuerst habe ich eine horizontale Teilung vorgenommen, indem ich Ctrl+b gedrückt habe " und teilen Sie dann den unteren Bereich vertikal, indem Sie Ctrl+b % .

Wie Sie im obigen Screenshot sehen, führe ich in jedem Bereich drei verschiedene Programme aus.

3.8.4. Zwischen Fenstern wechseln

Um zwischen den Fenstern zu wechseln, drücken Sie Strg+b und Pfeiltasten (links, rechts, hoch, runter) .

3.8.5. Befehle an alle Bereiche senden

Im vorherigen Beispiel führen wir in jedem Bereich drei verschiedene Befehle aus. Es ist jedoch auch möglich, dieselben Befehle gleichzeitig an alle Bereiche zu senden.

Drücken Sie dazu Ctrl+b und geben Sie den folgenden Befehl ein und drücken Sie ENTER :

:setw synchronize-panes

Geben Sie nun einen beliebigen Befehl in einem beliebigen Bereich ein. Sie werden sehen, dass derselbe Befehl in allen Fenstern angezeigt wird.

3.8.6. Fenster tauschen

Drücken Sie zum Austauschen der Bereiche Ctrl+b und o .

3.8.7. Fensternummern anzeigen

Drücken Sie Ctrl+b und q Fensternummern anzuzeigen.

3.8.8. Töte Scheiben

Um ein Fenster zu beenden, geben Sie einfach exit ein und ENTER Schlüssel. Alternativ drücken Sie Ctrl+b und x . Sie sehen eine Bestätigungsnachricht. Drücken Sie einfach "y" um das Fenster zu schließen.

4. Tmux-Bereiche vergrößern und verkleinern

Wir können Tmux-Bereiche zoomen, um sie in die volle Größe des aktuellen Terminalfensters einzupassen, um den Text besser sichtbar zu machen und mehr von seinem Inhalt anzuzeigen.

Dies ist nützlich, wenn Sie mehr Platz benötigen oder sich auf eine bestimmte Aufgabe konzentrieren. Nach Abschluss dieser Aufgabe können Sie den Tmux-Bereich wieder in seine normale Position verkleinern (entzoomen). Weitere Details unter folgendem Link.

  • So zoomen Sie Tmux-Fenster für eine bessere Textsichtbarkeit

5. Tmux-Sitzungen automatisch starten

Es ist immer eine gute Praxis, einen lange laufenden Prozess innerhalb einer Tmux-Sitzung auszuführen, wenn Sie mit Remote-Systemen über SSH arbeiten.

Denn es verhindert, dass Sie die Kontrolle über den laufenden Prozess verlieren, wenn die Netzwerkverbindung plötzlich abbricht.

Eine Möglichkeit, dieses Problem zu vermeiden, besteht darin, Tmux-Sitzungen automatisch zu starten. Weitere Einzelheiten finden Sie unter folgendem Link.

  • Tmux-Sitzung auf Remote-System automatisch starten, wenn Sie sich über SSH anmelden

Schlussfolgerung

In diesem Handbuch haben wir die Verwendung von Tmux-Befehlen anhand von Beispielen besprochen. In dieser Phase erhalten Sie eine grundlegende Vorstellung des Tmux-Befehlszeilenprogramms und wie Sie Tmux verwenden, um mehrere Terminalsitzungen zu verwalten. Weitere Einzelheiten finden Sie in den Manpages.

$ man tmux

Sowohl GNU Screen als auch Tmux-Dienstprogramme können sehr hilfreich sein, wenn Server per SSH aus der Ferne verwaltet werden. Lernen Sie Screen- und Tmux-Befehle gründlich, um Ihre Remote-Server wie ein Profi zu verwalten.


Linux
  1. Senden Sie mit Terminator Befehle an mehrere SSH-Sitzungen

  2. Wie tmux Freude in Ihrem Linux-Terminal macht

  3. Linux-Befehle – Übersicht und Beispiele

  4. Teilen von Linux-Terminalsitzungen mit Tmux und Screen

  5. Verwenden Sie den Bildschirmbefehl, um Terminalsitzungen in Ubuntu 20.04 zu verwalten

Beispiele für Bildschirmbefehle zum Verwalten mehrerer Terminalsitzungen

So verwenden Sie den Bildschirmbefehl zum Verwalten von Terminalsitzungen in Ubuntu 20.04

So installieren und verwenden Sie Tmux (Terminal Multiplexer) unter Linux

So führen Sie mehrere Linux-Befehle gleichzeitig im Linux-Terminal aus

10 PuTTY PLINK-Beispiele zur Automatisierung von Remote-Linux-Befehlen aus Windows-Stapeldateien

ClusterSSH(cssh) – Verwalten Sie mehrere SSH-Sitzungen unter Linux