
$ ps$ ps
$ ps 명령을 사용하면 현재 단말기에서의 프로세스 목록만 뜸$ ps -o pid,command$ ps -o [pid][command][...]
$ ps를 사용하되, -o 옵션으로 매개변수로 넣은 것으로 출력됨$ ps -o pid,command

-l: 우선순위$ ps -l

-f: 프로세스 상세 정보$ ps -f 옵션을 주면 현재 단말기에서 프로세스 상세목록 출력
| UID | PID | PPID | C | STIME | TTY | TIME | CMD |
|---|---|---|---|---|---|---|---|
| 프로세스를 실행 시킨 사용자 | PID | 부모 PID | CPU 사용량 (%) | 프로세스 시작 시간 | 프로세스가 실행된 터미널 | 프로세스 실행시간 | 실행 중인 프로세스 이름(명령) |
$ ps m: 스레드 출력$ ps m 옵션을 붙여 사용하자!$ ps m -o pid,tid,command

-e: 전체 목록 출력$ ps -e: 시스템에 실행 중인 모든 프로세스 출력
-ef: 전체 + 자세히$ ps -ef 시스템에 실행 중인 모든 프로세스 상세 목록 출력
-aux: 전체+실행상태+BSD계열
| 항목 | 설명 |
|---|---|
| UID | system V 계열에서 나타나는 항목 프로세스 소유자 명 |
| USER | BSD 계열에서 나타나는 항목 프로세스 소유자 명 |
| PID | 프로세스 ID |
| %CPU | CPU 사용 비율 추정치 (BSD) |
| %MEM | 메모리 사용 비율 추정치 (BSD) |
| VSZ | Virtual-memory Set Size: KB 단위또는 페이지 단위 가상메모리 사용량 |
| RSS | Resident Set Size: 실메 메모리 사용량 |
| TTY | 프로세스와 연결된 터미널 |
| STAT | 현재 프로세스 상태 |
| STAT | 설명 |
|---|---|
D | 디스크 관련 대기 상태(BSD) |
I | idle 상태 |
K | 사용가능한 커널 프로세스 (AIX) |
P | 페이지 관련 대기 상태 (BSD) |
N | nice되어진 상태 |
| R | Running: 실행 중 혹은 실행될 수 있는 상태 |
S | sleep 상태 |
T | 정지된 상태 (suspended) |
W | swap out된 상태 |
X | 메모리 확보를 위한 대기상태 (System V) |
Z | Zombie 프로세스 |
> | 우선순위가 인위적으로 높아진 상태 56/58 |
ps auxf: tree형태로 보여줌
$ pstree: ps를 tree로 보여줌$ pstree -p: pid를 보여주는 tree$ pstree -s: parent$ pstree PID: PID 기준으로 tree$ pstree -p PID: PID 기준으로 tree + pid$ pstree -ps PID: PID 기준으로 tree + pid + parentpstree 실행
subprocess.Popen("pstree -ps $$",shell=True,executable="bin/bash")으로 pstree실행

$ pgrep : 프로세스 명으로 PID 찾기$ pgrep [process]
rsync PID 찾기$ pgrep rync

$ pgrep -a : full CMD 출력$ pgrep [process] -a
rsync PID 찾고 CMD도 출력$ pgrep rsync -a
rsync 명령을 사용하는 PID 쭉 출력됨process 명만 써야 검색됨
0 ~ 20 : 일반 유저가 부여 가능0 : default-20 ~ -1 : 슈퍼 유저만이 부여 가능renice 명령으로 NI를 20으로 변경할 수 있다.(우선 순위을 제일 낮추는 행위)$ renice 20 <pid>
$ renice: Nice 변경$ renice <Nice> <PID>
<Nice> 값으로 변경