모든 화면을 어떻게 종료합니까?

모든 화면을 어떻게 종료합니까?

실수로 1000개가 넘는 화면을 만들었습니다. 명령 하나로 어떻게 모두 죽일 수 있나요? (또는 몇 개)

답변1

당신이 사용할 수있는 :

pkill screen

또는

killall screen

OSX에서는 프로세스를 모두 대문자로 SCREEN이라고 합니다. 따라서 다음을 사용하십시오.

pkill SCREEN

또는

killall SCREEN

답변2

화면이 꺼지면 다음을 사용하십시오.

screen -wipe

답변3

최근에 awk에 익숙해지기 시작했고 이것을 정리했는데 그 목적에 부합했습니다. 이해하기 쉽기 때문에 포스팅했습니다.

screen -ls | grep '(Detached)' | awk 'sys {screen -S $1 -X quit}'

어디에 screen -ls현재 화면이 모두 나열되어 있습니까? grep 'pattern'일치하는 모든 행을 필터링합니다. 그런 다음 분리된 모든 화면에 대한 핸들을 얻을 수 있으며 awk sys {command}명령을 함께 복사하여 붙여넣고 awk에서 선택한 첫 번째 인수를 참조하여 실행할 수 sys있습니다 . $1마지막으로 quit 명령을 실행합니다 screen -X quit.

답변4

for scr in $(screen -ls | awk '{print $1}'); do screen -S $scr -X kill; done

관련 정보