pgrep (Process Grep)
pgrep은 실행 중인 프로세스의 이름을 기반으로 프로세스 ID(PID)를 찾아주는 명령어입니다. ps aux | grep 이름과 같이 복잡하게 명령어를 조합할 필요 없이, 특정 프로세스의 번호만 깔끔하게 뽑아낼 때 매우 유용합니다.
1. 기본 사용법
pgrep [옵션] [패턴]
2. 주요 옵션
| 옵션 | 이름 | 설명 |
|---|---|---|
-l |
list name | 프로세스명 표시. PID뿐만 아니라 프로세스의 이름도 함께 보여줍니다. |
-a |
full list | 전체 경로 표시. 실행 시 사용된 전체 명령어 인자까지 모두 보여줍니다. |
-u |
user | 특정 사용자. 특정 사용자가 실행한 프로세스 중에서만 검색합니다. |
-n |
newest | 최신 프로세스. 검색 조건에 맞는 프로세스 중 가장 최근에 실행된 것 하나만 보여줍니다. |
-x |
exact | 정확히 일치. 패턴과 이름이 정확히 일치하는 프로세스만 찾습니다. |
-c |
count | 개수 출력. 검색된 프로세스의 총 개수만 보여줍니다. |
3. 실무 활용 예시
① 특정 프로그램의 PID만 확인하기 (스크립트용)
pgrep nginx
# 결과 예: 1234
② 프로세스 이름과 PID 함께 확인하기
pgrep -l sshd
# 결과 예: 1234 sshd
③ 특정 사용자의 프로세스 검색
pgrep -u kimcomputer python
④ 프로세스 강제 종료와 조합 (pkill의 원리)
특정 프로세스를 찾아서 한 번에 종료하고 싶을 때 kill 명령어의 인자로 바로 넘길 수 있습니다.
kill -9 $(pgrep chrome)
4. [팁] pgrep vs ps | grep
ps aux | grep 이름은 'grep' 명령어 자체도 검색 결과에 포함되는 경우가 많아 불편합니다.pgrep은 자기 자신은 제외하고 정확히 목표로 하는 프로세스만 찾아주므로 훨씬 깔끔하고 효율적입니다.