개요
ps -ef는 시스템에서 실행 중인 모든 프로세스를 사용자 ID, 프로세스 ID, 부모 프로세스 ID, CPU 사용률, 시작 시간, 터미널, CPU 시간, 실행 명령어 등 상세한 정보와 함께 나열합니다. 이를 통해 시스템의 현재 상태를 파악하고 특정 프로세스를 식별하는 데 유용합니다.
ps -ef 출력 컬럼 설명
ps -ef 명령의 주요 출력 컬럼은 다음과 같습니다.
- UID: 프로세스를 실행한 사용자 ID
- PID: 프로세스 ID
- PPID: 부모 프로세스 ID
- C: CPU 사용률 (최근 시간 동안의 CPU 사용량)
- STIME: 프로세스 시작 시간
- TTY: 프로세스가 연결된 터미널 (tty, pts 등)
- TIME: 프로세스가 사용한 총 CPU 시간
- CMD: 실행된 명령어와 인수
주요 옵션
ps 명령어는 다양한 옵션을 통해 출력 형식을 제어할 수 있습니다. 'ps -ef' 조합은 '-e'와 '-f' 옵션의 결합입니다.
프로세스 선택 및 출력 형식
생성된 명령어:
명령어를 조합해 보세요.
설명:
`ps` 명령어를 실행합니다.
위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.
사용 예시
ps -ef 명령의 다양한 활용 예시입니다.
모든 프로세스 상세 정보 출력
ps -ef
시스템에서 실행 중인 모든 프로세스의 상세 정보를 출력합니다.
특정 프로세스 검색
ps -ef | grep sshd
grep 명령과 조합하여 특정 키워드를 포함하는 프로세스를 검색합니다. (예: sshd 프로세스)
특정 사용자 프로세스 검색
ps -ef | grep root
특정 사용자(예: 'root')가 실행한 프로세스만 검색합니다.
헤더를 포함한 상위 N개 프로세스 보기
ps -ef | head -n 5
출력량이 많을 때, 헤더를 포함하여 상위 몇 줄만 확인합니다. (예: 상위 5줄)
특정 PID의 프로세스 정보 확인
ps -ef | grep 1234
특정 PID(예: 1234)를 가진 프로세스의 상세 정보를 확인합니다.
팁 & 주의사항
ps -ef는 시스템 상태를 파악하는 강력한 도구이지만, 출력량이 많을 수 있으므로 grep과 같은 다른 명령어와 조합하여 사용하는 것이 일반적입니다.
ps aux vs ps -ef
ps 명령어는 System V 스타일(예: -ef)과 BSD 스타일(예: aux)의 두 가지 주요 옵션 형식을 지원합니다. 둘 다 모든 프로세스를 보여주지만, 출력 형식과 일부 정보가 다를 수 있습니다. -ef는 System V 스타일의 'full' 형식이며, aux는 BSD 스타일의 'all users' 및 'full' 형식입니다.
- ps -ef: System V 스타일, 모든 프로세스, 상세 정보 (UID, PID, PPID, C, STIME, TTY, TIME, CMD)
- ps aux: BSD 스타일, 모든 사용자 프로세스, 상세 정보 (USER, PID, %CPU, %MEM, VSZ, RSS, TTY, STAT, START, TIME, COMMAND)
grep을 이용한 필터링
ps -ef의 출력은 매우 길 수 있으므로, 원하는 정보를 빠르게 찾기 위해 항상 grep과 함께 사용하는 것이 좋습니다. 예를 들어, 'ps -ef | grep httpd'는 httpd 관련 프로세스만 보여줍니다.
프로세스 종료
ps -ef로 확인한 PID를 사용하여 kill 명령으로 특정 프로세스를 종료할 수 있습니다. 예: 'kill