Linux命令:ps查看系统运行进程信息命令详解

最近更新时间 2020-01-03 16:53:01

在Linux操作系统中,ps命令(process status)可以显示当前运行的进程。它能捕获系统在某一事件的进程状态。如果你想不断更新查看的这个状态,可以使用top命令。

语法

ps [options]

常用命令

1. 查看当前用户下的所有进程。

ps
   PID TTY          TIME CMD
 15779 pts/0    00:00:00 bash
 15798 pts/0    00:00:00 ps

 2. 查看所有进程并根据名称过滤。

ps -A|grep firewalld
  6519 ?        00:00:02 firewalld

3. 查看所有以root用户运行的详细进程信息。

ps -U root -u
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       6206  0.0  0.1  62044  1076 ?        Ssl Jan02   0:00 /sbin/auditd
root          2  0.0  0.0      0     0 ?        S    Jan02   0:00 [kthreadd]
......

4. 以BSD格式显示所有进程。

ps axu
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       6206  0.0  0.1  62044  1076 ?        Ssl Jan02   0:00 /sbin/auditd
root          2  0.0  0.0      0     0 ?        S    Jan02   0:00 [kthreadd]
......
列名 内容
%CPU 进程正在使用多少个CPU
%MEM 进程正在使用多少内存
ADDR 进程的内存地址
C或CP CPU使用率和调度信息
COMMAND* 进程名,包括参数(如果有的话)
NI nice值
F 标志
PID 进程ID
PPID 父进程ID
PRI 进程优先级
RSS 真实内存用量
S or STAT 进程状态码
START or STIME 进程启动时间
SZ 虚拟内存用量
TIME 总CPU用量
TT或TTY 与进程相关的终端
UID或USER 进程所有者的用户名
WCHAN 进程所等待事件的内存地址

 

5. 按树形目录显示进程信息。

ps -e --forest
 PID TTY          TIME CMD
   2 ?        00:00:00 kthreadd
   3 ?        00:00:01  \_ ksoftirqd/0
   5 ?        00:00:00  \_ kworker/0:0H
   7 ?        00:00:00  \_ migration/0
......

6. 查看CPU或内存高的进程。

查看CPU占用情况
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
查看内存占用情况
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
   PID   PPID CMD                         %MEM %CPU
  6519      1 /usr/bin/python -Es /usr/sb  3.3  0.0
  7111      1 /usr/bin/python2 -Es /usr/s  1.9  0.0
  6394      1 /usr/lib/polkit-1/polkitd -  1.2  0.0
......

7. 使用watch工具结合ps命令实时监控内存使用情况。

watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'
Every 1.0s: ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head

   PID   PPID CMD                         %MEM %CPU
  6519      1 /usr/bin/python -Es /usr/sb  3.3  0.0
  7111      1 /usr/bin/python2 -Es /usr/s  1.9  0.0
......

注:Ctrl+c 或 Ctrl+g退出watch终端。

注:ps命令只能查看静态信息,如果需要实时查看系统运行情况,可以使用htoptop或者glances等工具。

 

rss_feed