我正在尝试通过运行应用程序的脚本关闭screen(1)
。我怎么能这样做?我正在做screen -dmS name stuff_to_execute
,但它会创建一个新的。我试着搜索如何做到这一点,但一无所获。
答案 0 :(得分:3)
来自screen(1)
联机帮助页:
-d -m
以“分离”模式启动屏幕。这会创建一个新会话但不会附加到该会话。这对系统启动脚本很有用。
所以我认为-dmS
不会关闭正在运行的screen(1)
。
您想 kill 指定的screen(1)
实例吗?或者你只是想强迫它分离?
如果你想要杀死:screen -S name -X quit
如果要分离:screen -dS name
答案 1 :(得分:1)
这是我用来关闭所有屏幕的内容:
screen -ls | grep Detached | awk '{print $1}' | cut -f1 -d'.' | while read in; do screen -X -S $in quit; done
它会屏幕ID,并通过id退出所有内容。
答案 2 :(得分:0)
有时,一个顽固的脚本可以通过发送一个中止键序列来杀死打开一个屏幕:
screen -X -S "script0$scriptID" stuff "^C"
答案 3 :(得分:0)
:~$ screen -list
有屏幕:
23308.rsamikan-3(2015年7月20日星期一04:42:05 IST)(独立)
23014.rsamikan-2(2015年7月20日星期一04:41:53 IST)(独立)
22730.rsamikan-1(2015年7月20日星期一04:41:44 IST)(独立)
16037.rsamikan-remote(2015年7月20日星期一02:51:37 IST)(附)
/ var / run / screen / S-rsamikan中的4个套接字。
我只使用以下脚本杀死并擦除分离的屏幕。
:~$ **screen -list | grep Detached | awk '{print $1}' | while read in; do screen -X -S $in quit; done**
:~$ screen -list
屏幕上有:
16037.rsamikan-remote(2015年7月20日星期一02:51:37 IST)(附) 1个/ var / run / screen / S-rsamikan中的套接字。