如何过滤不断更新的bash
命令的输出,以便文本覆盖在输出的顶部?
我用来tmux
显示htop
跨多个服务器的多个进程。不幸的是,tmux
标记每个窗格并不容易,因此我想在输出中的某个位置覆盖服务器的名称。我不在乎它是否掩盖了一小部分输出。
答案1
您可以top
以批处理模式运行(参见man top
),而不是使用循环watch
。例如:
watch "hostname; top -b -n 1"
答案2
从 2.3 开始,tmux 允许您在每个窗格边框中设置标题。在您的中启用它
~/.tmux.conf
:
set -g pane-border-format "#{pane_index} #{pane_title}"
set -g pane-border-status bottom
然后,在每个窗格中运行htop
命令之前,在该窗格中添加一个 printf 命令,该命令将发送适当的转义序列以动态设置窗格标题:
printf '\033]2;%s\033\\' 'remotehost'