본문 바로가기
  • ▒ 네모의 쉽게 배우는 네트워크 | 개발 ▒
리눅스(Redhat)/유용한 명령어

여러 프로세스를 한번에 종료하기(ps, kill, grep)

by 너l모 2022. 2. 8.
반응형

※ 업무하면서 습득한 내용들을 정리해 놓은 포스팅입니다 :P 추가로 궁금하신 점은 댓글로 남겨주시고 필요한 자료 있으면 요청주세요! 잘못된 내용이 있으면 고쳐주시면 감사하겠습니다. 자료 퍼가실 때는 출처 남겨주세요!


 ο 목차

     


    ※ 코드 보는 방법 참고

    ㅇ 달러 기호($)가 있는 경우 -> 리눅스 터미널에서 CLI 명령어 입력

    ㅇ "=#" 기호가 있는 경우 -> psql 쉘에서 명령어 입력

    ㅇ 꺽쇠가 하나 있는 경우(>) -> 윈도우 명령 프롬프트(cmd)에서 명령어 입력

    ㅇ 꺽쇠가 세개 있는 경우(>>>) -> python 쉘에서 명령어 입력


    어제 밤에 데몬이 멈춰서 프로세스 종료 관련해서 작업하다가 나중에 까먹을까봐 내용 정리해 봅니다.

     

    1. 프로세스 출력 명령어

    1) 모든 프로세스 출력

    $ ps -ef

    * 결과 참고

    UID        PID  PPID  C STIME TTY          TIME CMD
    root         1     0  0 09:57 ?        00:00:08 /usr/lib/systemd/systemd --switched-root --system --deserialize 22

     

    2) 특정 문자를 포함하는 프로세스만 출력 

    $ ps -ef | grep 검색할문자열

     

    * 검색할문자열 안에 스페이스가 있는 경우 따옴표(')나 쌍따옴표(") 안에 넣어주기(한 단어인 경우 따옴표 상관없음)

    ex)

    ps -ef | grep "parallel worker"  OK

    ps -ef | grep parallel worker     X

    ps -ef | grep parallel             OK

    ps -ef | grep worker              OK

     

    3) 다중 문자를 포함하는 프로세스 출력

    - 다중 문자 AND 결과 출력

    $ ps -ef | grep 검색할문자열1 | grep 검색할문자열2

     : 검색할문자열1과 검색할문자열2를 모두 포함하는 프로세스만 출력됨

     

    - 다중 문자 OR 결과 출력

    $ ps -ef | grep "검색할문자열1\|검색할문자열2"

    : 검색할문자열1이나 검색할문자열2 둘 중 하나를 포함하는 프로세스가 출력됨

    * 문자열은 따옴표, 혹은 쌍따옴표로 묶어주고 "|" 앞에 이스케이프(\) 기호를 붙여 파이프 기능을 살려줌

    728x90

    2. 프로세스 종료 명령어

    1) 프로세스 종료 기본 명령어

    $ sudo kill -15 종료할프로세스PID

    * kill -15 옵션은 안전한 종료 명령(하던 작업 마무리하고 작업중인 데이터 저장)인 반면 kill -9 옵션은 강한 강제 종료 옵션(작업중인 데이터 저장 없이 바로 종료)이기 때문에 웬만하면 kill -15 옵션으로 프로세스를 종료하고, 그래도 안 되는 경우 차선책으로 -9 옵션 사용

     

    2) 단일 문자열을 포함하는 프로세스 일괄 종료 명령어

    $ sudo ps -ef | grep 검색할문자열1 | awk '{print $2}' | xargs kill -15

    - $2에 프로세스의 PID 정보가 들어가고 kill -15 명령어를 사용해 순차적으로 검색된 프로세스를 종료

     

    3) 다중 문자열을 포함하는 프로세스 일괄 종료 명령어

    - 다중 문자열을 모두 포함하는 프로세스 일괄종료

    $ sudo ps -ef | grep 검색할문자열1 | grep 검색할문자열2 | awk '{print $2}' | xargs kill -15

    : 검색할문자열1과 검색할문자열2를 모두 포함하는 프로세스 일괄 종료 

     

    - 다중 문자열중 하나를 포함하는 프로세스 일괄 종료

    $ sudo ps -ef | grep "검색할문자열1\|검색할문자열2" | awk '{print $2}' | xargs kill -15

    : 검색할문자열1이나 검색할문자열2 둘 중 하나를 포함하는 프로세스 일괄 종료


    혹시 추가로 궁금하신 점 있으면 댓글 주세요~


    ※ 좋아요와 구독은 큰 힘이 됩니다. 감사합니다. 

     

     

    반응형

    댓글