我无意中创建了 1000 多个屏幕。如何用一个命令将它们全部杀死? (或几个)
答案1
您可以使用 :
pkill screen
或者
killall screen
在 OSX 中,该进程称为 SCREEN(全部大写)。所以,使用:
pkill SCREEN
或者
killall SCREEN
答案2
如果屏幕死机,请使用:
screen -wipe
答案3
最近开始熟悉 awk,我把它放在一起,它达到了它的目的。我发布它是因为它很容易理解。
screen -ls | grep '(Detached)' | awk 'sys {screen -S $1 -X quit}'
其中screen -ls
列出了所有当前屏幕。
grep 'pattern'
过滤掉所有匹配的行。然后,我们可以获得所有分离屏幕的句柄,并且awk sys {command}
可以将命令复制并粘贴在一起并使用 执行它sys
,$1
指的是 awk 选取的第一个参数。最后我们用 执行退出命令screen -X quit
。
答案4
for scr in $(screen -ls | awk '{print $1}'); do screen -S $scr -X kill; done