J'ai une session tmux assez simple en cours d'exécution avec deux fenêtres ouvertes. l'un d'eux pour le piratage local et l'autre pour le travail.
Ce que j'aimerais faire, c'est simplement me connecter à la fenêtre de piratage tout en laissant la fenêtre de travail ouverte dans un autre terminal. Cependant, dès que je me connecte à tmux, toutes les commandes sont envoyées aux deux fenêtres, donc si je passe à une autre fenêtre, la même chose se produit dans l'autre terminal et vice-versa.
Existe-t-il un moyen pour moi de me connecter simplement à chaque fenêtre séparément ?
Réponse acceptée :
La raison pour laquelle les deux clients changent de fenêtre en même temps est qu'ils sont tous les deux connectés à la même session (la "fenêtre actuelle" est un attribut de la session, pas du client). Ce que vous pouvez faire, c'est lier une ou plusieurs fenêtres dans plusieurs sessions différentes. Étant donné que chaque session a sa propre "fenêtre actuelle", vous pouvez ensuite changer de fenêtre indépendamment dans chaque session.
La façon la plus simple d'utiliser cette fonctionnalité est d'utiliser la fonctionnalité "sessions groupées" de la new-session
commande :
$ tmux new-session -t 'original session name or number'
Pour voir les sessions actuellement disponibles :
$ tmux list-sessions
Chaque session d'un groupe partagera automatiquement le même ensemble de fenêtres :l'ouverture/la liaison (ou la fermeture/la dissociation) d'une fenêtre dans une session du groupe entraîne automatiquement la liaison (ou la dissociation) de la même fenêtre dans toutes les autres sessions de la groupe.
Lorsque vous avez terminé votre session "extra", vous pouvez la tuer avec kill-session
. Les fenêtres elles-mêmes ne seront pas supprimées à moins que votre session ne soit la seule à laquelle elles étaient liées. Alternativement, vous pouvez vous déconnecter de votre session "extra" comme d'habitude (préfixe d
, ou detach-client
); si vous conservez votre session "supplémentaire" (en vous en détachant simplement), vous voudrez peut-être lui donner un nom descriptif (préfixe $
, ou rename-session
) afin de l'identifier facilement et de vous y reconnecter ultérieurement (vous pouvez également donner un nom à la session "d'origine").
Si vous ne souhaitez pas partager automatiquement un ensemble dynamique de fenêtres, vous pouvez utiliser link-window
(et unlink-window
) pour amener des fenêtres individuelles dans (et hors de) votre propre session « personnelle » ; cela offre un accès non automatique et de niveau inférieur à la même fonctionnalité de base sur laquelle sont basées les "sessions groupées" (fenêtres liées en plusieurs sessions).