按下 Cc 时如何分离而不是终止 xterm 内的 GNU Screen 会话?

按下 Cc 时如何分离而不是终止 xterm 内的 GNU Screen 会话?

在 X 启动时,将自动运行以下操作:

xterm -e 屏幕 -rS app1

这将打开一个 xterm 会话并附加已在分离状态下运行的 app1 的屏幕。

我想要实现的是能够使用 关闭 xterm 窗口ctrl-c,而不终止 GNU screen 会话。按下时表现出的行为ctrl-c是app1和屏幕会话终止。

我在读自动分离功能但到目前为止我还没有成功,我不知道这是否是我所需要的。

我正在运行带有 SLES 11.3 的 KDE。

答案1

“关闭 xterm 窗口”通常不是用 来完成的Ctrl-C。可能发生的情况是应用程序正在捕获它(SIGINT)并正常退出,离开屏幕会话,从而关闭终端(窗口)。

您的目标似乎是Ctrl-C应该通过屏幕处理来分离应用程序,这可以通过屏幕映射来完成:

bindkey "\003" detach

您可以发出此命令进行测试,Ctrl-A :然后输入上述内容。语法与自定义 .screenrc 相同,但不要将其放入任何用户中,否则任何人都无法突破该屏幕内的任何程序!如果您有上述内容,并且文件autodetach on中有一个.my.screenrc,那么您可以使用 调用原始文件screen -c .my.screenrc,然后启动其中的应用程序。

我再说一遍,请注意,现在screen指示捕获中断,此屏幕上没有启动任何程序,甚至由您的应用程序启动的程序如果出现故障/挂起也无法停止,只能从另一个终端停止。

autodetach选项将负责从窗口管理器正常关闭窗口。

相关内容