我从某个地方了解到,分离的屏幕可能会被
screen -X -S [session # you want to kill] kill
可以从中获取[您要终止的会话#]
screen -ls
但这行不通。有什么问题吗?正确的方法是什么?
我从某个地方了解到,分离的屏幕可能会被
screen -X -S [session # you want to kill] kill
可以从中获取[您要终止的会话#]
screen -ls
但这行不通。有什么问题吗?正确的方法是什么?
当前回答
将此添加到~/.bashrc:
alias cleanscreen="screen -ls | tail -n +2 | head -n -2 | awk '{print $1}'| xargs -I{} screen -S {} -X quit"
然后使用cleanscreen清理所有屏幕会话。
其他回答
== ISSUE THIS COMMAND
[xxx@devxxx ~]$ screen -ls
== SCREEN RESPONDS
There are screens on:
23487.pts-0.devxxx (Detached)
26727.pts-0.devxxx (Attached)
2 Sockets in /tmp/uscreens/S-xxx.
== NOW KILL THE ONE YOU DONT WANT
[xxx@devxxx ~]$ screen -X -S 23487.pts-0.devxxx kill
== WANT PROOF?
[xxx@devxxx ~]$ screen -ls
There is a screen on:
26727.pts-0.devxxx (Attached)
1 Socket in /tmp/uscreens/S-xxx.
当给出一些有意义的名称时,更容易终止会话:
//Creation:
screen -S some_name proc
// Kill detached session
screen -S some_name -X quit
screen -wipe
应清除所有死屏会话。
或者,在屏幕会话中,您只需键入exit
这将终止由屏幕启动的shell会话,从而有效地终止您正在进行的屏幕会话。
无需麻烦屏幕会话id等。
将此添加到~/.bashrc:
alias cleanscreen="screen -ls | tail -n +2 | head -n -2 | awk '{print $1}'| xargs -I{} screen -S {} -X quit"
然后使用cleanscreen清理所有屏幕会话。