Linux
tmux - 在新視窗中列出所有視窗的最後一行輸出
我正在執行一個有 40 個視窗的 tmux 會話。我需要創建一個概述視窗,列出每個螢幕的最後一行,並將每個列表更新為相應視窗的輸出。
這個想法是列舉所有的視窗,或者更確切地說是所有的窗格,因為一個視窗可以有幾個。然後擷取每個窗格的輸出並顯示擷取文本的最後一行。將其放入腳本中:
tmux list-windows -F '#I' | while read w; do tmux list-panes -F '#P' -t $w | while read p; do echo -n "${w}.${p}" ; tmux capture-pane -p -t "${w}.${p}" | tail -n 1 done done
假設您將這段程式碼放入
/some/file
之後,在您的 40 視窗 tmux 會話中,您創建新的監控視窗,然後執行watch -n 1 'bash /some/file'
在那裡。該
echo -n "${w}.${p}" ;
部分將在行前添加視窗和窗格索引,我發現了解輸出來源非常有用。你可能不想要它。