Ale*_*x J 6 linux unix gnu-screen
我的 .screenrc 中有这个
caption always "%{= Kw} [%0c] %-Lw%{= KW}[%50>%n%f* %t]%{= Kw}%+Lw%=| %l | ${FULLHOST}"
Run Code Online (Sandbox Code Playgroud)
它通常显示如下内容:
[01:06] 0$ vim 1$ top 2-$ tail [3$* ~] | 0.26 0.54 0.36 | machine.domain.com
Run Code Online (Sandbox Code Playgroud)
但是,当我打开很多窗口时,右侧的数据会被推离边缘并被截断:
[01:07] 0$ vim 1$ top 2$ tail 3$ ~ 4$ ~ 5$ ~ 6-$ ~ [7$* ~] | 0.21 0.46 0.34 | mac
Run Code Online (Sandbox Code Playgroud)
如何更改标题命令,以便在必要时截断窗口列表,而不是将正确的信息从边缘推送出去?如果活动窗口也总是显示,则奖励积分。
我目前正在使用的另一个解决方案。我使用的是 '%-043=' (它与 -30%(又名 70%)标记对齐),而不是原始行中的 '%=' (它与 bender 中的 '%-30=' 对齐)到 -43 字符标记)。但当然,这与本德有同样的问题,我需要抵消每个服务器的变化量。解决方案是使用如下命令编辑每个服务器的 .screenrc:
sed -i "s/043/0$(( 19 + $#FULLHOST ))/" ~/.screenrc
Run Code Online (Sandbox Code Playgroud)
(19是负载显示使用的字符数和间距)
由于我的 .screenrc 是由 shell 的 .rc 文件生成的(如果不存在),因此我可以在执行此操作后立即运行此命令,并最终为每个服务器提供正确的偏移对齐。不优雅,但很有效!
剩下的问题,我不太关心解决: