어떤 이유로 응답을 멈추고 CPU 리소스를 낭비하는 Google Chrome Helper 프로세스가 상당히 많이 발생합니다. 일반적으로 를 실행 killall Google\ Chrome\ Helper
하지만 이로 인해 Chrome을 다시 시작해야 하는 응답 프로세스를 포함하여 모든 것이 종료됩니다.
killall
응답하지 않는 프로세스에만 영향을 미치도록 하는 플래그가 있습니까 ?
답변1
이를 수행하는 한 가지 방법은 top
가장 많은 CPU를 사용하는 프로세스의 pid를 찾는 것입니다. 한 터미널에서 bash CPU 호그를 시작했습니다.
bash -c "while true; do :; done"
그런 다음 다른 터미널에서 다음과 같이 종료할 수 있습니다.
kill $( top -l2 | grep bash | sort -nrk3 | awk '{print $1;exit}' )
참고로 이건OSXtop
, 이것은 GNU 버전이 아닌 BSD입니다 .
-l2
2번의 반복을 위해 실행하도록 top에 지시합니다. 첫 번째는 모든 프로세스에 대해 0% CPU를 보고하므로 무시해야 합니다.- 필터
grep
는 단지 bash 라인입니다. grep 표현식이 출력의 다른 부분과 일치하는 경우 추가 작업이 필요할 수 있습니다top
. sort
출력을 세 번째 열(CPU %)을 기준으로 역순으로 정렬합니다.head
첫 번째 줄을 얻습니다(가장 높은 CPU)cut
첫 번째 열(PID)을 가져옵니다.- 위의 내용은 명령 대체에서 실행되며
$()
숫자 PID가 직접 전달됩니다.kill
GNU/Linux 머신에서는 다음과 같습니다:
kill $(top -bn1 | grep bash | sort -nrk9 | awk '{print $1;exit}')