1

要创建一个屏幕,我目前正在做:

screen -dmS screenname ./file

这非常有效,但是通过以下方式远程杀死它:

screen -X -S screenname exit

将回复:

No screen session found

这是由于屏幕具有 {session#}.{screenname}

如果这样做,它将起作用:

screen -X -S session#.screenname exit

有哪些可能的解决方案?我不完全确定您可以在启动屏幕时获得会话#。这也都是远程完成的。

4

2 回答 2

1

我还使用 -dmS 选项启动屏幕,并使用 stuff 命令向屏幕发送命令:

$ screen -dmS screenname
$ screen -ls
There is a screen on:
    22941.screenname        (Detached)
1 Socket in /var/run/screen/S-user.

$ screen -S screenname -p 0 -X stuff "exit$(printf \\r)"
$ screen -ls
No Sockets found in /var/run/screen/S-user.

$ 

有关“stuff”的更多详细信息在屏幕手册页中,搜索“stuff string”

于 2013-06-23T21:23:01.430 回答
0

屏幕-ls | grep 分离 | 切-d。-f1 | awk '{打印 $1}' | xargs 杀死

这将杀死所有分离的屏幕

屏幕-ls | grep 点 | 切-d。-f1 | awk '{打印 $1}' | xargs 杀死

这将杀死所有屏幕,无论是连接还是分离都不会打扰

于 2014-09-06T10:14:42.677 回答