在 Linux 中终止附加屏幕

问题描述 投票:0回答:12

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

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

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

linux gnu-screen
12个回答
129
投票
screen -X -S SCREENID kill

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

screen -S SCREENNAME -p 0 -X quit

您可以通过执行

screen -ls

查看屏幕会话列表

22
投票

从终端创建屏幕:

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 来执行命令。


7
投票

这对我来说非常有效。通过以下方式获取屏幕 ID:

screen -r

screen -ls

然后关闭屏幕:

kill -9 <screenID>
现在它变成了死屏, 然后用以下方法将其擦掉:
screen -wipe


5
投票

来自屏幕用户的手册

screen -d -r "screenName"

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


3
投票

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

screen -X -S "SCEEN_NAME" quit

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

exit

1
投票

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

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

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

屏幕-r


1
投票

假设您的屏幕 ID 有一个模式。然后您可以使用以下代码立即终止所有连接的屏幕。

result=$(screen -ls | grep 'pattern_of_screen_id' -o)
for i in $result; 
do      
    `screen -X -S $i quit`;
done

0
投票

我通常不会命名我的屏幕实例,因此这可能没有用,但是您是否尝试过不使用“myscreen”部分的

screen -r
?通常对我来说,
screen -r
会显示每个屏幕的PID,然后我可以用
screen -d -r <PID>

重新连接

0
投票

您可以找到附加运行屏幕的进程ID。 我发现它与你可以通过命令获取的会话ID相同:

screen -ls

您可以使用以下命令来终止该进程:
kill [sessionId]

sudo kill [sessionId]


0
投票

所有

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

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

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

运行

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


0
投票

您只需按照此程序即可

如果屏幕处于分离状态

screen -r "screenName"

exit

这将杀死/终止您想要杀死的屏幕

如果屏幕处于附着状态

screen -d -r "screenName"

exit

-2
投票

查找结果:点击这里

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

© www.soinside.com 2019 - 2024. All rights reserved.