gpt4 book ai didi

terminal - 如何从所有 tmux 窗口中清除铃声状态

转载 作者:行者123 更新时间:2023-12-04 10:09:23 27 4
gpt4 key购买 nike

我帮助维护了大量的类 Unix 服务器,因此保留了一个名为 tmux-rebuild 的脚本我用它来重建所有 tmux session 和窗口,并通过 SSH 链接到每个服务器。

我已将 tmux 配置为当在该窗口中打印终端响铃字符时,在其状态栏中显示带有感叹号的红色窗口名称。这对于像 irssi 这样的程序非常方便。当我在另一个窗口中有消息时提醒我。

我也有我的$PS1在每台服务器上设置以在每个提示结束时打印一个终端铃声。这很有用,因为如果我在一个窗口中运行一个长时间的工作并切换到另一个窗口,我可以立即看到它何时完成,因为当我的提示在工作完成后写入屏幕时,tmux 会使窗口名称以红色显示一个感叹号。这对我的工作流程非常有用。

然而,它会导致上面提到的重建脚本出现一个小问题,因为当我在运行它后启动 tmux 时,每个 session 中的每个窗口都被标记为红色,因为第一个提示被打印到屏幕上。这使得该功能在我访问每个窗口之前都没用,其中有 40-50 个。

有什么我可以添加到我的脚本中的东西,可以在创建 session 和窗口后清除所有警报吗?如有必要,我不介意使用 kludge。

最佳答案

从 tmux 手册页,特别是这里的最后一句话:

kill-session [-aC] [-t target-session]
Destroy the given session, closing any windows linked to it
and no other sessions, and detaching all clients attached
to it. If -a is given, all sessions but the specified one is
killed. The -C flag clears alerts (bell, activity, or
silence) in all windows linked to the session.

所以,简单地说:
tmux kill-session -C

关于terminal - 如何从所有 tmux 窗口中清除铃声状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12558584/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com