如何在tmux中终止窗口?

Dmi*_*try 195 window tmux

如何在tmux中终止窗口?像Ctrlak在快捷方式屏幕Ctrla作为前缀.

Ken*_*ent 296

试试 Prefix+&

如果你有

bind q killp
Run Code Online (Sandbox Code Playgroud)

在你的.tmux.conf,你可以按Prefix+ q太杀了窗口,只有当只有一个在该窗口面板.

上面的Prefix默认为 Ctrl + b, 所以默认情况下终止窗口你可以使用 Ctrl +b &

  • 这很好用:`Ctrl + b&`,注意,你必须用'y`确认真正杀死包含该窗口中所有窗格的当前窗口.您将被放置在之前使用的窗口内. (4认同)
  • 值得注意的是,默认情况下 `Prefix` + `q` 显示窗格编号,因此将 `killp` 分配给该组合将覆盖此快捷方式。 (3认同)

Rus*_*wal 98

<Prefix> & 杀死一个窗口

<Prefix> x 杀死一个窗格

如果只有一个窗格(即窗口没有拆分成多个窗格,<Prefix> x会杀死窗口)

与往常一样迭代,<Prefix>通常是CTRL+b.(我认为对于初学者问题,我们可以一直说CTRL+b,而不是谈论前缀,但无论如何:))


Gar*_*ary 82

通常:

tmux kill-window -t window-number
Run Code Online (Sandbox Code Playgroud)

例如,如果您在窗口1中并且想要杀死窗口9:

tmux kill-window -t 9
Run Code Online (Sandbox Code Playgroud)

  • 这个。(顺便说一下,非常感谢!)如果在其他终端中运行 tmux 的情况下远程完成,则可以执行 `INFO=$(tmux new-window -P notepad)` 后跟 `tmux kill-window -t $INFO `. (3认同)
  • 要终止特定窗格“tmux Kill-pane -t 1”,其中 1 是窗格编号 (2认同)

Nik*_*nyh 59

对我来说解决方案如下:

  1. ctrl+b q 显示窗格号.
  2. ctrl+b x 杀死窗格.

杀死最后一个窗格将终止窗口.

  • 当您刚刚在tmux窗口中完成一个过程时,这是最好的解决方案。 (2认同)
  • `杀死最后一个窗格将杀死窗口`。对我不起作用吗?我用的是苹果电脑 (2认同)

Jim*_*kie 39

肯特的回答完全回答了你的问题,但是如果你想将tmux的配置更改为类似于GNU Screen,这里有一个tmux.conf我已经习惯了这个:

# Prefix key
set -g prefix C-a
unbind C-b
bind C-a send-prefix

# Keys
bind k confirm kill-window
bind K confirm kill-server
bind % split-window -h
bind : split-window -v
bind < resize-pane -L 1
bind > resize-pane -R 1
bind - resize-pane -D 1
bind + resize-pane -U 1
bind . command-prompt
bind a last-window
bind space command-prompt -p index "select-window"
bind r source-file ~/.tmux.conf

# Options
set -g bell-action none
set -g set-titles on
set -g set-titles-string "tmux (#I:#W)"
set -g base-index 1
set -g status-left ""
set -g status-left-attr bold
set -g status-right "tmux"
set -g pane-active-border-bg black
set -g pane-active-border-fg black
set -g default-terminal "screen-256color"

# Window options
setw -g monitor-activity off
setw -g automatic-rename off

# Colors
setw -g window-status-current-fg colour191
set -g status-bg default
set -g status-fg white
set -g message-bg default
set -g message-fg colour191
Run Code Online (Sandbox Code Playgroud)

  • 这过于冗长并且没有表明问题的答案 (12认同)

gat*_*ado 30

如果您只想执行一次,而不添加快捷方式,则可以随时键入

<prefix> 
:
kill-window
<enter>
Run Code Online (Sandbox Code Playgroud)


Tom*_*ner 10

当你问如何杀死一个窗口时.窗格,我经常不想杀死它,只是为了让它恢复到工作状态(窗格的布局对我很重要,杀死窗格会破坏它,所以我必须重新创建它); tmux提供了respawn该效果的命令:respawn-paneresp.respawn-window.只是像我这样的人可以在这里找到这个解决方案.


小智 8

很多方法可以做到这一点,但我最喜欢的只是在bash提示符下输入'exit'.

  • 这假设bash正在窗口中运行.我想杀死的窗口导致我进入这个页面是tmux命令列表 - 没有shell退出. (3认同)

pin*_*oli 7

ctrl + d 在Linux终端中杀死一个窗口,在tmux中也起作用。

这是一种方法。

  • 请注意,此快捷方式仅表示“数据结束”。仅当tmux窗格中当前正在运行的进程接受该信号并在接收到该信号时终止自身时(例如bash这样做),它才起作用。由于窗格中没有进程,因此它会被tmux关闭。并非在所有情况下都有效。 (2认同)
  • 如果窗口中有一个正在运行的 shell,那么这是可以的,但如果只有一个冻结的应用程序,则需要更残酷的东西。Nikolay Fominyh 的回答效果很好。 (2认同)

Din*_*ray 6

默认情况下
<Prefix>& 杀死一个窗口
<Prefix>x 杀死一个窗格
你可以添加配置信息

vi ~/.tmux.conf
bind-key X kill-session
Run Code Online (Sandbox Code Playgroud)

然后
<Prefix>X 用于终止会话

  • 这对于初学者来说可能会派上用场。`&lt;Prefix&gt;` 默认为 `Ctrl+b`,这意味着首先需要同时按下 `Ctrl` 和 `b` 按钮,然后按上述键。例如,要删除窗格,首先按 Ctrl+b(即按前缀)进入命令模式,然后按键盘上的 x。 (2认同)