어딘가에서 분리 된 스크린이
screen -X -S [session # you want to kill] kill
어디에서 [세션 번호를 죽이고 싶습니까?]
screen -ls
그러나 이것은 작동하지 않습니다. 뭐 잘못 됐어? 올바른 방법은 무엇입니까?
답변
“kill”은 하나의 화면 창만 종료합니다. 전체 세션을 “kill”하려면을 사용하십시오 quit
.
예
$ screen -X -S [session # you want to kill] quit
죽은 세션의 경우 $ screen -wipe를 사용하십시오.
답변
다음을 수행하여 스크린 세션 내에서 응답하지 않는 분리 된 세션을 종료 할 수 있습니다.
-
screen -list
분리 된 스크린 세션을 식별하기 위해 입력 하십시오.~ $ 화면-목록 화면이 있습니다 : 20751. 멜빈 _ 피터 _V42 (분리)
참고 :
20751.Melvin_Peter_V42
세션 ID입니다. -
분리 된 스크린 세션에 연결
화면 -r 20751.Melvin_Peter_V42
-
세션에 연결되면 Ctrl+ A를 누르고 다음을 입력하십시오.
:quit
답변
목록 화면 :
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
답변
의미있는 이름이 주어지면 세션을 죽이는 것이 더 쉽습니다.
//Creation:
screen -S some_name proc
// Kill detached session
screen -S some_name -X quit
답변
스크린 세션이있는 곳으로 가서 실행할 수 있습니다.
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에 소켓이 없습니다.
답변
screen -wipe
죽은 화면 세션을 모두 청소해야 합니다.
답변
이것을 당신의 ~/.bashrc
:에 추가하십시오
alias cleanscreen="screen -ls | tail -n +2 | head -n -2 | awk '{print $1}'| xargs -I{} screen -S {} -X quit"
그런 다음 cleanscreen
모든 화면 세션을 청소 하는 데 사용하십시오 .