linux ps命令详解(unix风格)

linux中ps只显示进程的静态快照,及瞬间的进程状态,它拥有众多的风格,可分为3组:UNIX风格,BSD风格,GNU风格,本文介绍UNIX风格的ps指令。

参数

ps [-aefFly] [-p pid] [-u userid]

-a 与任何用户标识和终端相关的进程

-e 所有进程(包括守护进程)

-p pid 与指定PID相关的进程

-u userid 与指定用户标识userid相关的进程

-ef 显示所有用户进程,完整输出

-a 显示所有非守护进程

-t 仅显示所有守护进程

显示参数

ADDR 进程表中的虚拟地址

C 处理器利用率(废弃率)

CMD 正被执行的命令的名称

F 与进程相关的标志

NI nice值,用于设置优先级

PID 进程ID

PPID 父进程的进程ID

PRI 优先级(较大的数字=较低的优先级)

RSS 内存驻留空间大小(内存管理)

S 状态代码(D,R,S,T,Z)

STIME 累积系统时间

SZ 物理页的大小(内存管理)

TIME 累积CPU时间

TTY 控制终端的完整名称

UID 用户标识

WCHAN 等待通道

实例

1. 显示所有当前进程

$ ps -ax     //-a 代表 all,同时加上x参数会显示没有控制终端的进程。
$ ps -ax | less  //less便于查看

2. 根据用户过滤进程

$ ps -u webadmin     //要查看用户'webadmin'的进程

3. 通过cpu和内存使用来过滤进程

$ $ ps -aux | less
$ ps -aux --sort -pcpu | less    //--sort命令根据CPU使用来升序排序
$ ps -aux --sort -pmem | less    //--sort命令根据内存使用来升序排序
$ ps -aux --sort -pcpu,+pmem | head -n 10       //同时根据CPU和内存排序,并显示前10个结果

3. 通过进程名和PID过滤

$ ps -C java        //显示名为java的进程的信息
$ ps -f -C Java     //显示进程更多的信息

3. 显示安全信息

$ ps -eo pid,user,args          //参数 -e 显示所有进程信息,-o 参数控制输出。Pid,User和Args参数显示PID,运行应用的用户和该应用

3. 实时监控进程状态

$ watch -n 1 ‘ps -aux --sort -pmem, -pcpu’        //每秒刷新一次当前的进程状态
$ watch -n 1 ‘ps -aux --sort -pmem, -pcpu | head 20’    //限制前20条

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。