tmuxペインを別のセッションに移動する


43

これ行う以外に、ペインで実行中のコマンドを別のtmuxセッションに移動することは可能ですか?

回答:


68

はい、それは非常に簡単です、move-panetmuxコマンドを使用します。詳細情報の実行

man tmux | less -I '+/mOVE-pane'

トリッキーな部分は、tmuxがどのようにセッション内のウィンドウ、ペインを操作してコマンドなどのペインを参照するかを知ることです。

第一歩

他のセッションに移動するペインに移動します

ステップ2

を実行して、ターゲットセッションの名前を取得します<prefix>s

私のシステムでは:

 (0) + 0: 8 windows (attached)  
 (1) + 1: 1 windows 
       ^
       |
    This is the session name. It could be different 
    on your system and it could be a word (not just a number).

ステップ3-コマンドの実行

<prefix>:move-pane -t <session_name>:<window number>
                      ^^^^^^^^^^^^^^ the name from above goes in here

だから私のシステムでは、実行中のプロセスでペインに移動し、実行しました

<prefix>:move-pane -t 1:1

そして、プロセスを含むペインは、セッションのウィンドウ1に移動しました1

分割として挿入されるため、通常は他のセッションでウィンドウをスローアウェイウィンドウとして実行する必要があります。

注:ターゲットウィンドウが存在する必要があるようです。存在しない場合、move-paneコマンドはエラーを発行します。

tmuxコマンド内のセッション、ウィンドウ、およびペインを指定するための形式の詳細については、のセクションCOMMANDSを参照してくださいman tmux


12
より簡単な手順があります:でペインをマーク<prefix>mし、で宛先ウィンドウに<prefix>w移動し、でマークしたペインをそこに移動しjoin-paneます。
ダンアロニ

7

コメントできないので、ここに配置します。tmux2.1-3build1〜の場合、コマンドは次のようになります。

<prefix>:move-pane -t session_name:window_number

- -tセッション名の前に" " が必要です(必ずしも数字ではありません)。また、指定された番号のウィンドウが存在する必要があります。

残りはすべてthe_velour_fog の回答で説明されているとおりです。

PSあなたがそうsession_nameせずにのみを入力した場合window_number

<prefix>:move-pane -t session_name:

その後、ペインは宛先セッションの現在のウィンドウに移動されます(このウィンドウは分割されます)。

PPSウィンドウ(ウィンドウだけでなく)を移動する場合は、tmuxクライアント間でウィンドウ移動する方法に関する適切な回答があります

<prefix>:move-window [-d] [-s src-window] [-t dst-window]

(alias: movew)

ここでsrc-windowおよびdst-windowの形式を持ちsession:window.paneます。


-1

それぞれ独自のiTermで2つのセッションを実行しています。ペインをあるセッションから別のセッションに移動するために必要なことは

ペインを選択

<leader>s <session>

<session>角括弧内の数字はどこですか

tmux 2.7


実際には、ペインをあるセッションから別のセッションに移動するわけではありません。これは、現在の端末から表示しているセッションを変更するだけです。これは、他のセッションの切断と接続に相当します。実際に、他の複数のペインを開いた状態でセッション間でペインを移動できるようにしたいと思います。
HEGX64
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.