终端 – 如何从所有tmux窗口清除铃状态

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

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

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

但是它会导致上面提到的重建脚本出现轻微问题,因为当我在运行它后启动tmux时,每个会话中的每个窗口都会标记为红色,因为第一个提示被打印到屏幕上.这使得该功能在我访问每个窗口之前无用,并且有40-50个这样的东西.

我可以添加到我的脚本中,它会在会话和窗口创建后清除所有警报吗?如果有必要,我不介意使用kludge.

解决方法

找出一个可接受的解决方法;我重新定义了下一个/上一个绑定以允许重复:

# Allow repeats for next/prev window
bind-key -r n next-window
bind-key -r p previous-window

这允许我通过按下我的前缀键并点击“n”快速扫描会话中所有窗口的警报,直到它们全部清除,然后我回到原来的窗口.

dawei

【声明】:丽水站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。