首页 文章

杀死独立屏幕会话[关闭]

提问于
浏览
742

我从某个地方学到了一个独立的屏幕可以被杀死

屏幕-X -S [会话#你要杀]杀

你可以从哪里得到[你要杀的会话#]

屏幕-ls .

但这不起作用 . 哪里不对了?什么是正确的方法?

11 回答

  • 19

    "kill"只会杀死一个屏幕窗口 . 要"kill"完整会话,请使用 quit .

    示例

    $ screen -X -S [session # you want to kill] quit
    
  • 459

    您可以通过执行以下操作来终止在屏幕会话中没有响应的分离会话 .

    • 键入 screen -list 以标识分离的屏幕会话 .
    ~$ screen -list  
        There are screens on:  
             20751.Melvin_Peter_V42  (Detached)
    

    注意: 20751.Melvin_Peter_V42 是您的会话ID .

    • 附加到分离的屏幕会话
    screen -r 20751.Melvin_Peter_V42
    
    • 连接到会话后按Ctrl A然后键入 :quit
  • 41

    List screens:

    screen -list
    

    Output:

    There is a screen on:
    23536.pts-0.wdzee       (10/04/2012 08:40:45 AM)        (Detached)
    1 Socket in /var/run/screen/S-root.
    

    Kill screen session:

    screen -S 23536 -X quit
    
  • 17

    当给出一些有意义的名字时,杀死一个会话会更容易:

    //Creation:
    screen -S some_name proc
    // Kill detached session
    screen -S some_name -X quit
    
  • 7

    您可以直接前往屏幕会话所在的位置并运行:

    screen -ls
    

    结果

    There is a screen on:
             26727.pts-0.devxxx      (Attached)
     1 Socket in /tmp/uscreens/S-xxx. <------ this is where the session is.
    

    然后删除它:

    cd /tmp/uscreens/S-xxx
    
    ls
    
    26727.pts-0.devxxx
    
    rm 26727.pts-0.devxxx
    
    ls
    

    uscreens 目录中不再包含 26727.pts-0.devxxx 文件 . 现在确保输入:

    screen -ls

    你应该得到:

    / tmp / uscreens / S-xxx中找不到套接字 .

  • 1044
    screen -wipe
    

    应该清理所有 dead 屏幕会话 .

  • 15

    对我来说简单

    exit
    

    作品 . 这是在屏幕会话中 .

  • 108

    将此添加到 ~/.bashrc

    alias cleanscreen="screen -ls | tail -n +2 | head -n -2 | awk '{print $1}'| xargs -I{} screen -S {} -X quit"
    

    然后使用 cleanscreen 清除所有屏幕会话 .

  • 125

    要终止所有分离的屏幕会话,请在.bash_profile中包含此函数:

    killd () {
    for session in $(screen -ls | grep -o '[0-9]\{5\}')
    do
    screen -S "${session}" -X quit;
    done
    }
    

    运行它,调用 killd

  • 25
    == 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.
    
  • 5

    或者,在屏幕会话中,您只需键入 exit

    这将终止屏幕启动的shell会话,这有效地终止了您所在的屏幕会话 .

    无需担心屏幕会话ID等 .

相关问题