Linux ps
1. ps
프로세스 정보를 표시한다.
2. 주요 옵션
옵션 | 내용 |
---|---|
-e | 현재 실행중인 모든 프로세스를 표시한다. |
-f | 유저명, 시작시간을 표시한다. |
-u | 유저명으로 검색한다. |
-o | 사용자가 설정한 포맷으로 출력한다. |
-p [pid] | 지정한 프로세스 정보만 표시한다. |
-e f | 프로세스의 관계를 트리형식으로 표시한다. |
3. 사용예제
1) 현재 실행중인 모든 프로세스 표시
1
2
3
4
5
$ ps -e
PID TTY TIME CMD
1 ? 00:00:09 init
2 ? 00:00:00 kthreadd
3 ? 00:00:45 migration/0
2) 특정 프로세스 표시
1
2
3
$ ps -p 18299
PID TTY TIME CMD
18299 ? 04:14:12 java
3) 유저명 시작 시간 표시
1
2
3
4
$ ps -f
UID PID PPID C STIME TTY TIME CMD
user 26723 26722 0 01:18 pts/3 00:00:00 -bash
user 31323 26723 0 02:12 pts/3 00:00:00 ps -f
4) 프로세스 관계 트리 표시
-
를 이용한 옵션과 별도로 f
를 이용하여 처리한다. -e
옵션으로 모든 프로세스가 표현되고, f
로 트리관계가 표현된다.
1
2
3
4
5
6
7
$ ps -e f
PID TTY STAT TIME COMMAND
1060 ? Ss 0:03 /usr/sbin/sshd
26674 ? Ss 0:00 \_ sshd: AAAA [priv]
26676 ? S 0:00 \_ sshd: AAA@pts/1
26677 pts/1 Ss+ 0:00 \_ -bash
31544 pts/3 R+ 0:00 \_ ps -e f
5) 사용자가 설정한 포맷
-o
옵션을 이용해서 현재 실행중인 프로세스의 정보중 원하는 것만 확인할 수 있다.
옵션 | 내용 |
---|---|
user | 유저명 |
pid | 프로세스 ID |
ppid | 부모 프로세스 ID |
rss | 실제 메모리 사용량 |
pmem | 메모리 사용률 |
pcpu | CPU 사용률 |
time | CPU 사용시간 |
etime | 총 실행 시간 |
cmd | 커맨드 |
1
2
3
4
5
6
7
8
# 메모리 사용량을 기준으로 정렬하면서 출력
$ ps -eo user,pid,ppid,rss,pmem,pcpu,time,etime,cmd --sort -rss
USER PID PPID RSS %MEM %CPU TIME ELAPSED CMD
root 4055 1 718308 4.6 0.0 03:52:29 181-01:30:24 /usr/lib/jvm/java/bin/java -Xmx1024m
hhhh 16973 1 562360 3.6 0.0 07:04:11 406-17:48:34 /usr/lib/jvm/java-openjdk/bin/java -X
hhhh 16406 1 498624 3.2 0.0 02:52:46 172-20:17:29 /usr/lib/jvm/java-openjdk/bin/java -X
mmmmmm 6382 1 481460 3.1 0.0 08:01:16 442-20:16:10 /usr/lib/jvm/java-openjdk/bin/java -D
ffff 28203 1 430040 2.7 0.2 13:12:58 250-18:56:11 /usr/lib/jvm/java-openjdk/bin/java -D
[출처 및 참고]
This post is licensed under CC BY 4.0 by the author.