使用 ps
命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
语法
ps [options]复制代码
可使用的option值可以通过 man ps
命令查阅,这里不再赘述。
示例
例1 查看当前系统运行的进程
[work@10-13-22 ant]$ psPID TTY TIME CMD 5566 pts/0 00:00:00 ps30574 pts/0 00:00:00 bash复制代码
不加任何参数时,只展示当前系统运行的进程。
例2 查看所有进程的信息
[work@10-13-22 ant]$ ps -auxroot 1 0.0 0.0 43560 3908 ? Ss 2018 14:51 /usr/lib/systemd/systemd --switched-root --system --deserialize 21root 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 workPID TTY TIME CMD 983 ? 18:33:18 java 6210 pts/0 00:00:00 ps 6952 ? 01:53:00 java13494 ? 00:00:46 node13500 ? 00:06:15 node13510 ? 00:08:16 node13511 ? 00:08:06 node13516 ? 00:07:58 node13521 ? 00:07:55 node13944 ? 00:02:10 nginx13945 ? 00:01:55 nginx13946 ? 00:02:01 nginx13947 ? 00:02:13 nginx14546 ? 00:28:50 node /opt/web/t29082 ? 01:37:49 PM2 v2.9.1: God30573 ? 00:00:00 sshd30574 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
的用法。