如何关闭tmux中右侧的所有窗口

问题描述 投票:2回答:1

除非该窗口中有打开的窗口,否则是否可以发出命令以关闭所有tmux窗口?例如,打开的文件,正在运行的进程等?

我希望可以用作Web浏览器的功能,在其中您可以右键单击并选择close all other tabs to the right.。我想在tmux中发布它,并且类似于Web浏览器示例,具有“繁忙”的窗口或窗格提示我关闭它们或无声地关闭它们。

我看过this question,但我不一定要向所有窗口发出命令。

tmux tmuxinator
1个回答
1
投票

我刚刚建立了一个脚本来执行此操作,这里是:

#!/usr/bin/env python3
import subprocess
import os
import re

result = subprocess.run(['tmux', 'list-windows'], stdout=subprocess.PIPE)

result = result.stdout.decode('utf-8')

lines = result.splitlines()
should_close_next = False
for line in lines:

    if should_close_next:
        window = line.split(':')[0]
        os.system(f'tmux kill-window -t {window}')
        continue

    match = re.search("active", line)
    if match:
        should_close_next = True

并将其与您的tmux集成到您的tmux.conf

bind-key "k" run-shell "kill_panes_to_right.py\n"

最佳

© www.soinside.com 2019 - 2024. All rights reserved.