如何在 gnu 屏幕内运行 gnu 屏幕?

如何在 gnu 屏幕内运行 gnu 屏幕?

是否可以在 gnu screen 中运行 gnu screen?我不确定键绑定如何工作。我需要从本地 screen 会话登录到已在运行 screen 会话的服务器。

答案1

您只需按 ctrl-a 然后按 a 即可将 ctrl-a 实际发送到嵌套屏幕实例。

答案2

是的,这是可能的。您需要重新定义 的screen转义字符,例如在调用时将其设置为Ctrl+Escreen

screen -e^Eq

答案3

如果清除$STY环境变量,运行screen将启动嵌套会议。

^a然后,在使用任何绑定之前,您必须向嵌套会话发送一个文字。您可以^a按 ,^a然后按a(plain) 来发送文字。

因此,要在嵌套会话中创建一个新窗口,您需要按^a,,。ac

答案4

如果您使用 ctrl-a a 或更改转义字符,这些命令可以正常工作。但是,他还询问了如何从另一个终端内部进行连接。我花了一段时间才在网上找到这个,但在看到 -m 标志后,我在手册中查找了它。

    -m      cause screen  to  ignore  the  $STY environment variable. With
            "screen -m" creation of a new session is enforced, regardless whether screen is
            called from within another screen session or not. This flag has a special
            meaning in connection with the `-d' option:

    -d -m   Start screen in "detached" mode. This creates a new session but
            doesn't attach to it. This is useful for system startup scripts.

    -D -m   This also starts screen in "detached" mode, but doesn't fork a new
            process. The command exits if the session terminates.

之后我测试了使用以下方法创建新屏幕

screen-d -m

并从屏幕内部附加到它

screen -R -D

它按照我想要的方式工作,创建一个新屏幕并从屏幕内附加到它。我认为不会有很多人会使用此功能,但有时我会用完终端,因此将分组选项卡放在单独的屏幕中可能会很有用。

相关内容