So schließen Sie eine tmux-Sitzung

64

Ich verwende tmux, um mehrere Terminalfenster zu verwalten. Derzeit habe ich 2 Fenster mit mehreren Fenstern geöffnet. Ich weiß, dass ich das Präfix (für mich ist es ctrl+ a) verwenden muss, um Befehle einzugeben.

Wie kann ich die Sitzung innerhalb von tmux beenden? Welcher Befehl würde die Sitzung (alle Fenster und Fenster) und tmux gleichzeitig schließen?

ph3nx
quelle
So trennen Sie sich von tmux (lassen den Prozess laufen): unix.stackexchange.com/a/174443/178412
atomh33ls

Antworten:

86

Drücken Sie Ihr Präfix (z. B. Ctrl+ Aoder B, was die Standardeinstellung ist) und geben Sie dann ein :und drücken Sie kill-sessiondann Enter. Dies beendet die Sitzung, wie der Name des Befehls andeutet.

0xC0000022L
quelle
33

Wenn Sie eine andere Sitzung als die aktuelle Sitzung schließen möchten (und daher tmux weiterhin ausführen möchten; wenn Sie die aktuelle Sitzung wie in der Antwort von @ 0xC0000022L schließen, wird tmux auch dann geschlossen, wenn andere Sitzungen verfügbar sind), führen Sie in einem der tmux-Fenster die folgenden Schritte aus:

# tmux ls
keepMe: 1 windows (created Wed Jun 24 14:20:15 2015) [171x41]
otherSession: 1 windows (created Wed Jun 24 14:22:01 2015) [171x41]
3: 1 windows (created Wed Jun 24 14:23:28 2015) [171x41]

(assuming here that you're on keepMe session)
# tmux kill-session -t otherSession
-or-
# tmux kill-session -t 3

Dies löscht die "otherSession" oder Session Nummer 3 und lässt tmux laufen, vorausgesetzt, Sie haben beim Löschen keine "otherSession" oder Session Nummer 3 ausgewählt.

Ville
quelle
1
Oder wenn Sie es vorziehen, Ihr Präfix zu verwenden, ctrl + prefixgefolgt von :und geben Sie dann kill-session -t nameoder ein kill-session -t number. Wenn Sie dies aus der Sitzung heraus tun, möchten Sie Reattach mit beenden tmux a.
Matijs
19

TMUX-Präfix (zB ctrl+ b) +:kill-session

oder

tmux kill-session (kann entweder von innen oder von außen ausgeführt werden)

Beide Arten des Aufrufs können die Flags verwenden:

-t target-sessionZerstört die angegebene Sitzung.
-aZerstört alle Sitzungen außer der angegebenen Sitzung oder der Sitzung, mit der Sie verbunden sind

Laufen kill-sessionvon außen TMUX tötet die letzte Sitzung , die Sie angebracht wurden. -akehrt das um.

Für den Fall, dass Sie mehr als eine Sitzung laufen Sie töten alle Sitzungen auf einmal mit: kill-server.

FSchndr
quelle
Dies ähnelt der aktuell akzeptierten Antwort. Können Sie näher erläutern, warum Ihre Antwort anders ist?
Burgi
1
Niemand wies darauf hin, dass man mit dem kill-serverBefehl alle Sessions schließen könne . Ich habe auch gerne ein bisschen mehr Tiefe auf die Fahnen gelegt kill-session.
FSchndr
+1: Diese Antwort ist auch die einzige, die hilfreich ist -a, um alle anderen Sitzungen zu zerstören.
Aaron Danielson
Das ist die bessere Antwort. Ich wünschte, dies wäre ganz oben auf den Antworten ...
Blaszard