본문 바로가기
Linux/명령어

ps-ef | grep 명령어

by 글발 2023. 8. 28.
728x90
반응형

ps -ef | grep 명령어에 대해서 알아보자

 

사용방법은 간단하다. 

아래와 같은 형식으로 사용하면 결과물을 얻을 수 있다. 

ps -ef | grep 찾을단어

  • ex) ps -ef | grep start

그렇다면 하나씩 어떤 의미를 가지는지 하나씩 뜯어보자.

  1. ps(Process Status)
    • Process Status의 약자로 현재 실행 중인 프로세스의 목록을 보여주는 명령어
    • pid, cmd 등 기본적인 내용만 출력되므로 옵션 없이는 잘 사용하지 않는다.
    • 주요 옵션
      • -e : 모든 프로세스 출력(숨겨진 프로세스까지 모두 보여줌)
      • -f : 풀 포맷으로 출력(UID(User ID), PID(Process ID), ppid(Parent ID), TTY(프로세스와 연결된 터미널) 등)
      • -l : 긴 포맷으로 보여준다.(풀 포맷 정보 외에 더 많은 정보가 포함 됨)
      • -p: 특정 PID(Process ID)의 프로세스를 보여준다.
        • ex) ps -p 1
      • -u : 특정 사용자의 프로세스를 보여준다.
        • ex) ps -u apache
    • 즉! ps -ef 명령어를 실행하면 현재 실행 중인 프로세스의 전체 목록을 풀 포맷으로 출력한다.
    • ps -ef 명령어를 실행하면 너무 많은 결과가 출력된다.
    • 따라서 원하는 프로세스만 찾기 위해 grep 명령어를 사용한다.
  2. grep(Global Regular Expression Print)
    • global regular expression print의 약자로 특정 문자열을 찾는 명령어이다.
    • grep "찾을 문자열" 형식으로 이용한다.
    • 찾을 문자열에 공백이 포함되어 있다면 꼭 따옴표로 묶어주자.
    • 주요 옵션
      • -i : 대소문자를 구분하지 않고 검색
      • -n : 줄 번호를 함께 출력
      • -x : 패턴과 단어 전체가 일치하는 라인 출력
    • ex) grep start FileName
    • >> 특정 파일 내(FileName)에서 start라는 단어를 찾아낸다.

이제 위의 정리를 바탕으로 명령어를 합쳐서 보자.

ps -ef| grep start

>> "start" 문자열을 포함하는 실행 중인 프로세스의 전체 목록을 풀 포맷으로 출력

 

참고) ps -ef | grep에서 파이프 라인(|)은 무엇을 의미할까?

파이프 라인(|)은 보통 명렁어1|명령어2 형태를 가진다.(명령어가 더 추가될 수도 있음)

여기서 명령어1의 처리 결과를 명령어2로 전달하여 최종 출력 결과를 가져오는 것이다.

간단하게 말해서 원하는 결과를 찾기 위해 명령어를 함께 연결해서 사용하는 것이다.