我看到命令“tmux send-keys”,但有沒有辦法將輸出發送到相鄰窗格

我看到命令“tmux send-keys”,但有沒有辦法將輸出發送到相鄰窗格

在 tmux 會話中,我試圖找出是否有快速方法可以將一些輸出從一個窗格傳送到平行窗格。

例如,如果我位於左窗格(例如 0.0)並希望將命令的輸出傳送pwd到右窗格(例如 0.1)。有沒有一種快速的方法可以做到這一點。

如果這有答案,但在谷歌上搜尋了很長時間卻沒有得到任何結果,請提前道歉tmux send-keys -t right 'some text'

相反,我想在相鄰窗格中顯示輸出,有沒有辦法做到這一點?

答案1

我想在相鄰窗格中顯示輸出

如果您知道連接到另一個窗格的終端的檔案名稱(tty列印內容),則可以寫入它。例子:

pwd >/dev/pts/1

但這僅顯示那裡的人物;與窗格中執行的任何程式都沒有互動。您使用了“顯示”一詞,但我不確定這是否是您想要的。該解決方案在沒有 tmux 的情況下也可以工作。


如果要將輸出傳送到要在另一個窗格中呼叫的某些命令的標準輸入,請使用命名管道:

mkfifo foo
pwd >foo

現在轉到另一個 shell(另一個窗格)並讀取foo

<foo whatever

這也不依賴 tmux。


如果您想要將輸出貼到另一個窗格中(例如,使其成為 shell 中新命令的片段):

  1. pwd在來源窗格中正常呼叫。
  2. 進入複製模式並複製輸出。有了滑鼠支持,按住滑鼠左鍵並拖曳就足夠了。釋放按鈕後,所選文字將自動儲存在緩衝區中。
  3. 到目標窗格。
  4. paste-buffer使用(預設)貼上儲存的文字prefix]

相關內容