如何在tmux中关闭除当前窗格以外的所有窗格


13

我喜欢按自己的意愿来设置窗格,但是有时候事情会变得混乱或失控,我想关闭所有窗格并重新运行脚本。是否有一个简单的tmux命令来关闭除我当前所在的窗格以外的所有窗格?

Answers:


21

您可以使用“ kill-pane”命令。

 kill-pane [-a] [-t target-pane]
               (alias: killp)
         Destroy the given pane.  If no panes remain in the containing window, it is also destroyed.  The -a option kills all but the pane given with -t.

因此,例如,如果您想杀死除窗格0以外的所有窗格:

kill-pane -a -t 0

如果您不知道窗格编号是什么,则可以使用“ display-panes”命令:

 display-panes [-t target-client]
               (alias: displayp)
         Display a visible indicator of each pane shown by target-client.  See the display-panes-time, display-panes-colour, and display-panes-active-colour
         session options.  While the indicator is on screen, a pane may be selected with the '0' to '9' keys.

1
谢谢,我最终没有使用kill-pane,但是一直无法正常工作。我最终要做的是以这种方式分割窗口(split-window-h),我可以确定有多个窗格,然后我执行了(break-pane -d)将当前帧移动到一个新窗口中的背景。然后,我会执行杀死窗口。这样,我将进入新窗口(唯一的一个窗口)的窗格中。
Digital Powers

@DigitalPowers我喜欢您的解决方案,但有时它会使分割窗格很难找到。特别是如果您关闭了许多窗格。由于我绑定了键,因此我使用了“足够” swap-pane -U命令的hacky选项将窗格移至位置0,然后移至kill-pane -a -t 0
Edd Steel

7
注意:tmux kill-pane -a杀死除当前窗格以外的所有窗格。-t如果您喜欢当前窗格,则无需指定目标。
docwhat

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.