使用 ps 命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
语法
ps [options]
可使用的option值可以通过 man ps 命令查阅,这里不再赘述。
示例
例1 查看当前系统运行的进程
[work@10-13-22 ant]$ ps
PID TTY TIME CMD
5566 pts/0 00:00:00 ps
30574 pts/0 00:00:00 bash
不加任何参数时,只展示当前系统运行的进程。
例2 查看所有进程的信息
[work@10-13-22 ant]$ ps -aux
root 1 0.0 0.0 43560 3908 ? Ss 2018 14:51 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
root 2 0.0 0.0 0 0 ? S 2018 0:01 [kthreadd]
root 3 0.0 0.0 0 0 ? S 2018 0:05 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 2018 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 2018 0:06 [migration/0]
root 8 0.0 0.0 0 0 ? S 2018 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S 2018 24:03 [rcu_sched]
root 10 0.0 0.0 0 0 ? S 2018 0:19 [watchdog/0]
root 11 0.0 0.0 0 0 ? S 2018 0:13 [watchdog/1]
...省略更多..
例3 根据用户进行过滤
[work@10-13-22 ant]$ ps -u work
PID TTY TIME CMD
983 ? 18:33:18 java
6210 pts/0 00:00:00 ps
6952 ? 01:53:00 java
13494 ? 00:00:46 node
13500 ? 00:06:15 node
13510 ? 00:08:16 node
13511 ? 00:08:06 node
13516 ? 00:07:58 node
13521 ? 00:07:55 node
13944 ? 00:02:10 nginx
13945 ? 00:01:55 nginx
13946 ? 00:02:01 nginx
13947 ? 00:02:13 nginx
14546 ? 00:28:50 node /opt/web/t
29082 ? 01:37:49 PM2 v2.9.1: God
30573 ? 00:00:00 sshd
30574 pts/0 00:00:00 bash
本示例中,通过-u参数指明只显示work用户下的进程。
列说明
下面是对输出的结果中常见的列的说明:
- USER: 用户名
- PID: 进程ID(Process ID)
- %CPU: 进程的cpu占用率
- %MEM: 进程的内存占用率
- VSZ: 进程所使用的虚存的大小(Virtual Size)
- RSS: 进程使用的驻留集大小或者是实际内存的大小,Kbytes字节。
- TTY: 与进程关联的终端(tty)
- STAT: 进程的状态:进程状态使用字符表示的(STAT的状态码)
- TIME: 进程使用的总cpu时间
- COMMAND: 正在执行的命令行命令
ps 命令非常强大而常用,这里只以几个小例子解释一下其基本用法,在日常使用中一定要多多使用,熟练掌握ps的用法。