如何编写bash脚本重新连接到现有的linux屏幕?

时间:2016-07-29 12:02:15

标签: linux bash

我想编写一个bash脚本来重新连接到现有的linux屏幕,执行一些命令,然后从该屏幕分离。我知道在分离模式下创建一个新的Linux屏幕并执行一些命令。但我还没有找到重新连接到现有Linux屏幕的方法。

4 个答案:

答案 0 :(得分:2)

您可以使用-S选项为屏幕会话命名。 示例:screen -dS NAME <command>

然后,您可以使用screen -r NAME

重新连接到该会话

答案 1 :(得分:1)

试试这个;

(keyup.enter)="methodInsideYourComponent()"

如果您看到(附上)如下;

user@host:/screen -ls 

There are screens on:
        29229558.pts-5.host   (Detached)
        46661728.pts-22.host   (Detached)

user@host:/screen -r 46661728.pts-22.host

答案 2 :(得分:0)

要重新连接到屏幕,您必须按照以下步骤操作:

在从屏幕上取消附加之前,执行:

STDOUTTERM=$(who -m|awk '{print $2}')

然后你可以将stdout附加到你想要的任何东西上。完成后,重新连接到stdout,执行以下命令:

exec > /dev/$STDOUTTERM

答案 3 :(得分:0)

您可以使用screen -X exec将命令发送到正在运行的屏幕。有关重定向选项,请参见手册页。

screen -X exec ls

或者,您可以使用screen -X paste将文本发送到正在运行的屏幕的stdin缓冲区,就像用户键入了它一样。这可以是在交互式shell中运行命令的一种方式。

screen -X register a "ls\n"
screen -X paste a