하나의 kill 명령으로 두 개 이상의 프로세스를 종료하는 방법은 무엇입니까?

하나의 kill 명령으로 두 개 이상의 프로세스를 종료하는 방법은 무엇입니까?

다음 명령을 사용하여 쉘 스크립트를 통해 Java 프로세스를 종료합니다.

pidof java|xargs Kill -9 $1

출력 목록에 여러 요소가 포함되어 있으면 pidof어떻게 되나요 ? 같은 명령으로 어떻게 모두 죽일 수 있습니까?

답변1

먼저 확인해 보세요 pkill. 이름에 따라 프로세스를 원하는 수만큼 종료할 수 있습니다.

pkill java

검색의 일부로 매개변수와 함께 전체 명령을 사용할 수도 있습니다.

pkill -f some_string_in_arguemnts

xargs둘째, 공백이나 개행으로 구분된 숫자로 연결되는 한 여러 PID에 대해 구성이 잘 작동합니다.

답변2

killall어쨌든 이 명령은 대부분의 Linux에서 사용할 수 있습니다. 일부 배포판에서는 설치해야 할 수도 있습니다. 명령줄에 제공된 이름과 일치하는 모든 프로세스를 종료할 수 있습니다.

답변3

pgrepPID 목록을 제공할 수 있습니다.

예를 들어:

pgrep java 

Java와 관련된 PID 목록이 제공됩니다. 따라서 다음을 사용할 수 있습니다.

kill -9 `pgrep java`

답변4

나는 선호한다

kill -9 `pidof java`

인라인 출력이기 때문에

> pgrep gulp
6316
6565
> pidof gulp
6565 6316

문제는 pkill일부 시스템(예: Ubuntu)에서는 기본적으로 설치되지 않는다는 것 입니다.

관련 정보