linux
특정 이름을 가진 프로세스 죽이기
afewgood
2022. 4. 14. 11:34
ps -ef | grep start | awk '{print $1}' | xargs kill -9
"start" 라는 이름을 가진 프로세스를 모두 찾아서 죽이는 명령이다.
ps -ef | grep start 까지만 입력하면, 『start』 라는 이름을 가진 프로세스가 전부 출력된다.
awk '{print $1}' 는 앞 명령어의 결과 컬럼에서 첫번째 필드만 출력하는 명령이다.
- 참고로 일반적인 리눅스에서 ps -ef 명령의 첫번째 필드는 UID이고 두번째 필드가 PID인데
임베디드리눅스(busybox)에서 ps -ef 명령의 첫번째 필드는 PID 이다.
즉 『start』 라는 이름을 가진 프로세스의 PID가 출력된다.
xargs kill -9 는 앞에서 출력된 값을 인자로 kill -9 명령을 실행하라는 의미이다.
이 때 앞에서 전달받은 인자가 pid인데 kill명령으로 이를 모두 죽이는 것이다.
따라서 위 명령을 수행하면 최종적으로 『start』 라는 이름을 가진 프로세스가 전부 죽는 것이다.
출처: https://itholic.github.io/linux-kill-specific-process/