it-swarm-ko.com

분리 된 화면 세션 종료

나는 분리 된 화면이 어딘가에서 배울 수 있다고 배웠다.

screen -X -S [session # you want to kill] kill

[세션 # 당신이 죽이고 싶어] 어디에서 얻을 수 있습니다

screen -ls

그러나 이것은 효과가 없습니다. 뭐가 잘못 됐니? 올바른 방법은 무엇입니까?

798
Tim

"kill"은 하나의 화면 창만 죽일 것입니다. 전체 세션을 "종료"하려면 quit을 사용하십시오.

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

데드 세션의 경우 다음을 사용하십시오. $ screen -wipe

1146
innaM

다음을 수행하여 화면 세션에서 응답하지 않는 분리 된 세션을 종료 할 수 있습니다.

  1. 분리 된 화면 세션을 식별하려면 screen -list를 입력하십시오.

     ~ $ screen -list 
     화면이 있습니다 : 
     20751.Melvin_Peter_V42 (분리) 
    

    참고 : 20751.Melvin_Peter_V42는 세션 ID입니다.

  2. 분리 된 화면 세션에 연결

    화면 -r 20751.Melvin_Peter_V42
  3. 세션 프레스에 연결되면 Ctrl + A :quit를 입력하십시오.

479
Melvin Peter

목록 화면 :

screen -list

출력 :

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.

화면 세션 종료 :

screen -S 23536 -X quit
133
nilloc

몇 가지 의미있는 이름이 주어지면 세션을 죽이는 것이 더 쉽습니다.

//Creation:
screen -S some_name proc
// Kill detached session
screen -S some_name -X quit
108
Hitman_99

화면 세션이있는 장소로 이동하여 실행할 수 있습니다.

 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.

그리고 그것을 제거하십시오 :

  1. cd/tmp/uscreens/S-xxx
  2. ls
  3. 26727.pts-0.devxxx
  4. rm 26727.pts-0.devxxx
  5. ls

uscreens 디렉토리에는 더 이상 26727.pts-0.devxxx 파일이 없습니다. 이제 다음과 같이 입력하면됩니다.

screen -ls

그리고 당신은 다음을 얻어야합니다.

/ tmp/uscreens/S-xxx에 소켓이 없습니다.

43
rc2012
screen -wipe

모든 dead screen 세션을 정리해야합니다.

27
Vishv Jeet

~/.bashrc에 다음을 추가하십시오 :

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

그런 다음 cleanscreen을 사용하여 모든 화면 세션을 지 웁니다.

21
user2115803

나를 위해 간단한

exit

공장. 이것은 화면 세션에서 온 것입니다.

21
Nick Desaulniers

all detached 스크린 세션을 죽이려면,이 함수를 .bash_profile에 포함 시키십시오 :

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

실행하려면 killd을 호출하십시오.

15
Rose Perrone
== ISSUE THIS COMMAND
[[email protected] ~]$ 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
[[email protected] ~]$ screen -X -S 23487.pts-0.devxxx kill


== WANT PROOF?
[[email protected] ~]$ screen -ls
There is a screen on:
        26727.pts-0.devxxx      (Attached)
1 Socket in /tmp/uscreens/S-xxx.
7
duggi

또는 화면 세션에서 exit 를 입력하면됩니다.

이렇게하면 화면에 의해 시작된 쉘 세션이 종료되어 화면 세션이 종료됩니다.

화면 세션 ID 등을 신경 쓰지 않아도됩니다.

5
dat789