web-dev-qa-db-fra.com

Déplacer la fenêtre entre les clients tmux

J'apprends juste tmux et je n'ai aucune expérience avec l'écran. Je me demande si je peux déplacer une fenêtre dans un client tmux vers un autre client tmux. Je veux déplacer mon client IRC vers une nouvelle fenêtre sur mon écran.

112
Dustin

Oui, vous pouvez utiliser la commande move-window:

move-window [-d] [-s src-window] [-t dst-window]
           (alias: movew)

Ceci est similaire à link-window, sauf que la fenêtre de src-window est déplacée vers dst-window.

où src-window et dst-window ont la forme: session: window.pane (la session et la fenêtre peuvent être nom ou id).

Donc, en supposant que vous ayez une session 'chat' avec une fenêtre 'irc' et que vous souhaitiez la déplacer vers la session 'other_session' que vous pouvez faire (dans l'invite tmux):

move-window -s chat:irc -t other_session

Si vous êtes déjà dans la fenêtre de chat: irc, vous n'avez pas besoin de spécifier la source pour

move-window -t other_session:

le fera.

De la même manière, à partir de la session 'other_session', vous n'avez pas besoin de spécifier la cible.

movew -d irc:irc_window

Si vous ne vous avez pas nommé fenêtres/sessions, vous devez utiliser leurs identifiants.

173
mb14

Un autre utile:

 link-window [-dk] [-s src-window] [-t dst-window]
               (alias: linkw)
         Link the window at src-window to the specified dst-window.  If dst-window is specified
         and no such window exists, the src-window is linked there.  If -k is given and
         dst-window exists, it is killed, otherwise an error is generated.  If -d is given, the
         newly linked window is not selected.

Cela signifie que vous pouvez partager une fenêtre sur plusieurs sessions:

Assuming I have these 2 sessions:  daemons and proj

tmux link-window -dk -s daemons:0 -t proj:0
43
Alex Gaudio