Move window between tmux clients

I'm just learning tmux and I have no experience with screen. I'm wondering if I can move a window in one tmux client to another tmux client. I want to move my IRC client to a new window on my screen.


Yes, you can use the move-window command:

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

This is similar to link-window, except the window at src-window is moved to dst-window.

where src-window and dst-window have the form: session:window.pane (session and window can be either name or id).

So, supposing you have an 'chat' session with an 'irc' window and want to move it to the 'other_session' session you can do (in the tmux prompt):

move-window -s chat:irc -t other_session

If you are already in the chat:irc window you don't need to specify the source so

move-window -t other_session:

will do it.

In the same way, from the 'other_session' session you don't need to specify the target.

movew -d irc:irc_window

If you haven't named you windows/sessions, you have to use their ids.


Another useful one:

 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.

This means that you can share a window across multiple sessions:

Assuming I have these 2 sessions:  daemons and proj

tmux link-window -dk -s daemons:0 -t proj:0