67

我在 linux 中创建了一个屏幕“myscreen”,但它突然停止响应。我关闭了终端并试图重新打开它。“screen -ls”显示屏幕已附加。我尝试了以下命令,但没有任何响应。

screen -r myscreen
screen -D myscreen
screen -D -RR myscreen
screen -X -S myscreen quit

非常感谢重新连接到屏幕或杀死屏幕的任何帮助。

4

11 回答 11

111
screen -X -S SCREENID kill

或者,您可以使用以下命令

screen -S SCREENNAME -p 0 -X quit

您可以通过执行查看屏幕会话列表screen -ls

于 2013-11-25T15:08:22.933 回答
19

从终端创建屏幕:

screen -S <screen_name>

要查看屏幕列表:

<screen -ls> or <screen -list>

转到特定屏幕:

<screen -x screen_name>

<screen -r screen_name>

内屏


终止屏幕:

give ctrl+d screen will get terminated

分离屏幕:

 give <ctrl+ad>or <screen -d >screen will get detached

要重新连接屏幕:

screen -x <screen_name> or screen -r <screen_name>

从终端杀死屏幕:

<screen -X -S screen_name quit> 

或者

<screen -X -S screen_name kill>

您可以使用 screen_name 或 process_id 来执行命令。

于 2014-12-29T07:58:05.837 回答
7

这对我很有用。通过以下方式获取屏幕 ID:

screen -r

或者

screen -ls

然后杀死屏幕:kill -9 <screenID> 它现在变成了一个死屏幕,然后用以下命令将其清除:screen -wipe

于 2015-09-23T14:14:33.020 回答
2

来自屏幕用户手册

screen -d -r "screenName"

重新附加会话,如有必要,先将其分离

于 2021-01-27T21:40:29.027 回答
1

您可以创建一个函数来终止所有现有会话。看看杀死所有分离的屏幕会话

列出所有活动会话使用 screen -r

列出后,用鼠标选择您感兴趣的会话并将其粘贴。像这样

屏幕-r

于 2014-04-26T01:39:42.470 回答
1

假设您的屏幕 id 有一个模式。然后您可以使用以下代码一次杀死所有附加的屏幕。

result=$(screen -ls | grep 'pattern_of_screen_id' -o)
for i in $result; 
do      
    `screen -X -S $i quit`;
done
于 2017-09-27T19:54:55.960 回答
1

杀死分离的屏幕,请从终端使用:

screen -X -S "SCEEN_NAME" quit

如果您已连接,请使用(从终端和屏幕内部):

exit
于 2019-09-27T16:45:33.633 回答
0

我通常不命名我的屏幕实例,所以这可能没有用,但是您是否尝试screen -r过不使用“myscreen”部分?通常对我来说,screen -r会显示每个屏幕的 PID,然后我可以重新附加screen -d -r <PID>

于 2013-02-11T04:57:18.203 回答
0

您可以找到附加的运行屏幕的进程 ID。我发现它与您可以通过命令获取的会话 ID 相同:
screen -ls
您可以使用以下命令来终止该进程:
kill [sessionId]
sudo kill [sessionId]

于 2018-12-21T07:14:01.837 回答
0

没有一个screen命令对我来说是杀死或重新连接屏幕。任何screen命令都会挂起。我找到了另一种方法。

每个正在运行的屏幕都有一个与之关联的文件:

/var/run/screen/S-{user_name}

运行时,该文件夹中的文件将与屏幕名称匹配screen -list。如果您删除该文件,它会终止相关的运行屏幕(分离或附加)。

于 2020-11-17T05:46:32.280 回答
-2

查找结果:点击这里

Screen 是一个全屏窗口管理器,它在多个进程之间多路复用一个物理终端,通常是交互式 shell。每个虚拟终端都有一个回滚历史缓冲区和一个允许用户在窗口之间移动文本区域的复制和粘贴机制。

于 2015-07-21T10:42:54.507 回答