Ich habe eine ziemlich einfache tmux-Sitzung, die mit zwei geöffneten Fenstern ausgeführt wird. einer davon für lokales Hacking und einer für die Arbeit.
Ich möchte einfach eine Verbindung zum Hacking-Fenster herstellen, während ich das Arbeitsfenster in einem anderen Terminal geöffnet lasse. Sobald ich mich jedoch mit tmux verbinde, werden alle Befehle an beide Fenster gesendet. Wenn ich also zu einem anderen Fenster wechsle, passiert dasselbe im anderen Terminal und umgekehrt.
Gibt es eine Möglichkeit, mich einfach mit jedem Fenster separat zu verbinden?
Akzeptierte Antwort:
Der Grund, warum beide Clients gleichzeitig zwischen den Fenstern wechseln, liegt darin, dass sie beide mit derselben Sitzung verbunden sind (das „aktuelle Fenster“ ist ein Attribut der Sitzung, nicht des Clients). Sie können ein oder mehrere Fenster mit mehreren verschiedenen Sitzungen verknüpfen. Da jede Sitzung ihr eigenes „aktuelles Fenster“ hat, können Sie die Fenster dann in jeder Sitzung unabhängig wechseln.
Der einfachste Weg, diese Funktion zu verwenden, ist die Verwendung der Funktion „gruppierte Sitzungen“ von new-session
Befehl:
$ tmux new-session -t 'original session name or number'
So zeigen Sie die derzeit verfügbaren Sitzungen an:
$ tmux list-sessions
Jede Sitzung in einer Gruppe teilt automatisch denselben Satz von Fenstern:Das Öffnen/Verknüpfen (oder Schließen/Verknüpfen) eines Fensters in einer Sitzung der Gruppe bewirkt automatisch, dass dasselbe Fenster in allen anderen Sitzungen der Gruppe verknüpft (oder getrennt) wird Gruppe.
Wenn Sie mit Ihrer „zusätzlichen“ Sitzung fertig sind, können Sie sie mit kill-session
beenden . Die Fenster selbst werden nicht beendet, es sei denn, Ihre Sitzung war die einzige, mit der sie verknüpft waren. Alternativ können Sie sich wie gewohnt von Ihrer „zusätzlichen“ Sitzung trennen (Präfix d
, oder detach-client
); Wenn Sie Ihre „zusätzliche“ Sitzung beibehalten (indem Sie sich einfach davon trennen), möchten Sie ihr vielleicht einen aussagekräftigen Namen geben (Präfix $
, oder rename-session
), damit Sie sie leicht identifizieren und später erneut eine Verbindung herstellen können (möglicherweise möchten Sie der „ursprünglichen“ Sitzung auch einen Namen geben).
Wenn Sie nicht automatisch einen dynamischen Satz von Fenstern teilen möchten, können Sie link-window
verwenden (und unlink-window
) um einzelne Fenster in (und aus) Ihrer eigenen „persönlichen“ Sitzung zu bringen; dies bietet nicht-automatischen und untergeordneten Zugriff auf dieselbe Kernfunktionalität, auf der „gruppierte Sitzungen“ basieren (Fenster, die mit mehreren Sitzungen verknüpft sind).