この質問の範囲:https://unix.stackexchange.com/q/467025/256195
しかし、実際には、最初にtmuxを使用して新しい名前付きセッションを作成するtmux
内部sessionA
createを実行した後、名前をHow?に変更する必要があります。sessionB
1
sessionB
コマンドライン()で変更すると機能しますzsh>
が、zsh
スクリプトは出力を表示し続けます。スクリプトからコマンドラインにコピーして貼り付けるだけで、コマンドで期待どおりに機能します。
can't find session 1
can't find session 2
zsh
tmuxは、スクリプトが注文した場合でもzsh
予期しない動作を持つコマンドを処理します。
注:私はtmux
最初のwindow
ステップにいますsessionA
。
編集:コマンドラインにセッション名が1
存在することがわかりますが、zshスクリプトで名前を変更しようとすると失敗しますが、コマンドは機能します。
答え1
あなたの質問を完全に理解したかどうかはわかりませんが、tmuxセッション内でtmuxセッションを使用している場合は、バインドキーシーケンスを2回使用してからコマンドキーを使用する必要があります。
たとえば、ネストされた tmux セッションを 2 つのウィンドウに分割する場合は、主キーバインディングがあると仮定する 、 を使用Ctrl+bできます。Ctrl+b"
答え2
私が今理解しているのは、スクリプトにいるときに名前のないセッションの正しいセッション名を取得するために接続する方法はありません。つまり、zsh
セッションインデックスを想定してセッション内を呼び出して名前のないセッションを作成した後、無効になるということです。から来ました。tmux
tmux
rename-session -t2
1
ただし、論理的に名前が付けられていない新しいセッションは、次のものwindow
から始まります。rename-session -t1:1:2 <NewNAME>
t1:2:1
-t1
セッション1
、:1
ウィンドウ1
、:2
名前のない新しいネストされたセッション。
1
ネストしたセッションを作成する前に、セッション、ウィンドウがあります1
。
したがって、解決策は新しいウィンドウを作成し、明示的にその中に-s
セッションを作成することです-n
。