有什么方法可以禁用 gnu-screen 在启动时发出清除的行为?
我只是将 screen 用作后备,这样如果断开连接,会话就不会被 HUP。而且,我在登录时将 shell (bash) 配置为“exec screen -A”,这样我就可以自动进入 screen。
但是,屏幕立即发出清除消息,然后我必须向上滚动才能看到可能存在的登录消息。
类似地,在退出时,我也想跳过清除操作,这样我就可以看到 .bash_logout 的结果。
(如果有帮助的话,我的术语通常是 xterm-color(通过 Mac OS X 的 Terminal.app),尽管有时我确实通过 ssh 从其他节点进入。而且我通常连接到 Ubuntu 框/实例。)
答案1
由于screen
它占据了整个屏幕,因此不可能让它不处理终端缓冲区。如果您对此特别感兴趣motd
,您可以随时调用 .bash_profile cat /etc/motd
,这将为您提供相同的功能。
另一种选择是手动呼叫screen
,这听起来可能是您想要的行为——因为您没有积极使用屏幕来工作。如果您担心帐户被盗用,则进一步推荐这样做——因为登录屏幕还会显示您上次登录的位置。
答案2
正如 Redmumba 所提到的,screen
它会接管整个终端,所以你不能让它接管现有的缓冲区和显示器。
我所做的就是.screenrc
将状态栏显示在终端窗口底部,并训练我的手指screen -ADR
在没有看到状态栏时发出声音。这样,你就会有视觉提示,知道你实际上正在运行screen
,并且在你开始做任何可能无法在意外断开连接的情况下继续的事情之前,它会反射性地为你启动它。
(此外,如果屏幕状态栏中显示当前时间,这将起到保持活动信号的作用,可以防止连接因空闲时间过长而断开连接。)