Linux / 명령어 / ps - 현재 프로세스 상태 확인

ps는 실행 시점의 프로세스 목록을 보여 줍니다. PID, 사용자, 상태와 명령을 확인해 특정 서비스나 작업이 실제로 실행 중인지 조사할 때 사용합니다.

ps 명령어란?

ps는 한 시점의 스냅샷을 출력하고 끝납니다. 실시간으로 수치가 변하는 과정을 보려면 top이나 htop을 사용하세요. 옵션 표기는 POSIX 형식과 BSD 형식이 함께 있어, 하이픈 유무에 따라 의미가 달라질 수 있습니다.

기본 문법

ps [옵션]

설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man ps으로 현재 시스템의 설명을 확인하세요.

사용 예제

현재 터미널의 프로세스

인수 없이 실행하면 보통 현재 터미널과 연결된 프로세스만 표시합니다.

ps

시스템 전체 프로세스

사용자, PID, 부모 PID와 명령을 넓게 살펴봅니다.

ps -ef

특정 PID의 필드 지정

필요한 열만 지정하면 스크립트와 점검 결과를 읽기 쉽습니다.

ps -p 1234 -o pid,ppid,user,stat,cmd

프로세스 열을 읽는 방법

ps는 실행 시점의 프로세스 스냅샷을 보여줍니다. 열을 지정하면 PID(프로세스 ID), PPID(부모 PID), 상태, 명령 이름을 분명히 구분할 수 있습니다.

ps -o pid,ppid,stat,comm -p $$

예시 출력(번호는 실행할 때마다 달라짐):

    PID    PPID STAT COMMAND
   4321    4100 Ss   bash

$$는 현재 셸의 PID입니다. STAT의 첫 글자는 실행·대기 같은 상태를 나타내고 뒤의 문자는 부가 상태입니다. 프로세스는 조회 직후 종료될 수 있으므로, 종료 명령을 실행하기 전에는 PID와 명령을 다시 확인하세요.

주요 옵션과 형식

옵션·형식 설명
-e 전체 프로세스를 선택합니다.
-f 자세한 형식으로 출력합니다.
-p PID 지정한 프로세스 ID만 선택합니다.
-o 열목록 출력할 필드와 순서를 지정합니다.
aux BSD 스타일로 전체 사용자 프로세스와 자원 정보를 봅니다.

사용할 때 주의할 점

ps | grep 이름은 검색용 grep 자체가 결과에 섞일 수 있습니다. 이름 기준 PID 검색에는 pgrep가 편리합니다. 프로세스는 빠르게 생성·종료되므로 출력 직후의 PID가 여전히 같은 작업인지 시그널을 보내기 전에 다시 확인하세요.

자주 묻는 질문

ps와 top은 무엇이 다른가요?

ps는 실행 순간의 목록을 출력하고 종료합니다. top은 화면을 주기적으로 갱신해 변화량을 관찰합니다.

공식 문서

옵션의 정확한 동작과 구현별 차이는 ps 관련 공식 문서에서 확인할 수 있습니다.

같은 카테고리의 다른 글
Linux / 명령어 / dmesg - 커널 메시지와 부팅 로그 확인

Linux / 명령어 / dmesg - 커널 메시지와 부팅 로그 확인

Linux dmesg 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / ps - 현재 프로세스 상태 확인

Linux / 명령어 / ps - 현재 프로세스 상태 확인

Linux ps 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux 강좌 / 파일과 디렉터리 관리 - 생성·복사·이동·삭제

Linux 강좌 / 파일과 디렉터리 관리 - 생성·복사·이동·삭제

실습 폴더에서 파일과 디렉터리를 만들고 복사·이동·삭제해 봅니다. 덮어쓰기와 삭제 전에 경로와 결과를 확인하는 습관도 익힙니다.

Linux / 명령어 / clear - 터미널 화면 정리

Linux / 명령어 / clear - 터미널 화면 정리

Linux clear 명령어로 터미널 화면을 정리하는 방법을 설명합니다. 스크롤백을 보존하는 -x 옵션과 Ctrl+L·reset·tput의 차이, TERM 오류 해결법을 다룹니다.

Linux / 명령어 / tree - 디렉터리 구조를 트리 형태로 출력

Linux / 명령어 / tree - 디렉터리 구조를 트리 형태로 출력

Linux tree 명령어로 디렉터리와 파일 구조를 계층적으로 확인하는 방법을 설명합니다. 설치, 깊이 제한, 숨김 파일, 제외 패턴, 크기·권한 표시와 JSON 저장 방법까지 정리합니다.

Linux / 명령어 / xargs - 표준 입력을 명령 인수로 전달

Linux / 명령어 / xargs - 표준 입력을 명령 인수로 전달

Linux xargs 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux / 명령어 / scp - SSH로 로컬·원격 파일 복사

Linux / 명령어 / scp - SSH로 로컬·원격 파일 복사

Linux scp 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / split - 큰 파일을 크기·행 수별로 분할

Linux / 명령어 / split - 큰 파일을 크기·행 수별로 분할

Linux split 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux / 명령어 / rpm - RPM 패키지와 설치 데이터베이스 조회

Linux / 명령어 / rpm - RPM 패키지와 설치 데이터베이스 조회

Linux rpm 명령어의 적용 배포판과 기본 작업을 설명합니다. 패키지 조회·설치 예제, 주요 옵션과 시스템 변경 시 주의점을 알아봅니다.

Linux / 명령어 / mktemp - 안전한 임시 파일과 디렉터리 생성

Linux / 명령어 / mktemp - 안전한 임시 파일과 디렉터리 생성

Linux mktemp 명령어로 예측하기 어려운 이름의 임시 파일과 디렉터리를 안전하게 만드는 방법을 설명합니다. 템플릿, TMPDIR, trap을 이용한 정리와 -u 옵션의 위험도 알아봅니다.