您当前的位置:首页 > 计算机 > 系统应用 > Linux

Linux 查看进程之PS命令

时间:03-21来源:作者:点击数:

要对进程进行检测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程运行状态。Linux 系统中我们可以使用 ps 命令查看进程。

ps 命令介绍

ps(process status) 命令是 Linux 下最常用的进程查看工具,使用该命令可以确定哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等等。

注意:ps 命令工具显示的是进程的瞬间状态,并不是动态连续显示,如果想对进程状态进行实时监控应该用 top 命令。

ps 命令的基本使用

1. 执行任何不加选项的 ps 命令

[root@VM_81_181_centos ~]# ps
  PID TTY          TIME CMD
22402 pts/1    00:00:00 bash
22447 pts/1    00:00:00 ps

直接执行不加任何选项的 ps 命令时,则只显示当前用户会话中打开的进程。第一行为列表标题,包含基本四个字段,各个字段的含义描述如下:

PID:表示该进程的唯一 ID 号

TTY 或 TT:启动进程的终端名。表示该进程在哪个终端上运行。不是从终端启动的进程或与终端机无关的进程则显示为 ?

TIME:该进程使用 CPU 的累计时间

CMD:该进程所运行的命令

2.使用标准语法 (Unix 风格) 查看各个进程

选项:

-e:显示系统内所有进程的信息。与 -A 选项功能相同

-f:使用完整(full) 的格式显示进程信息,如果只有 ps -e 则输出进程信息的格式和只使用 ps 一样

各字段含义如下:

UID:启动该进程的用户的 ID 号

PPID:代表该进程的父进程的 ID 号

C:进程的 CPU 处理器利用率

STIME/START:表示进程的启动时间

注意:也可以使用 ps -eF 命令查看系统内的所有进程信息,输出的进程信息比使用 ps -ef 多三个信息分别是:SZ,RSS,PSR 关于这三个感兴趣的可以自己上网查阅一下

3.使用 BSD 语法查看系统上的进程信息

3.1 显示当前终端下的所有信息

a:显示当前终端下的所有进程信息,包含其他用户的进程信息。和 x 选项结合使用可以显示系统中所有进程的信息

x:显示当前用户在所有终端下的进程信息

字段描述:

STAT:表示进程的当前状态

R:running,运行或可运行状态(在运行队列中)。正在运行或准备运行的进程。
 
S:interruptable sleeping,可中断睡眠(等待事件完成)。正在睡眠的进程。
 
D:uninterruptable sleeping,不可中断的睡眠进程(通常为IO)。
 
T:stopped,停止或被追踪的进程。由作业控制信号停止。
 
Z:zombie,失败终止的(“僵死”)进程。
 
s:session leader,会话层状态。代表的父进程
 
N:低优先级进程
 
<:高优先级进程
 
+:前台进程。在前台进程组中
 
l:多线程进程。

3.2 以面向用户的格式显示当前终端下的所有信息

u:使用以用户为主的格式输出进程信息

字段描述:

USER:启动该进程的用户帐号名称

%CPU:表示进程的 CPU 占用率

%MEM:表示进程的内存占用率

VSZ:表示进程虚拟内存的大小,以 KB 为单位

4. 排序

当使用 aux 选项查看进程的 CPU 或内存使用量来筛选,从而方便找出占用资源最多的进程,但是默认情况下不排序,在这里我们可以使用 --sort 命令选项排序,例如:

ps aux --sort=%mem 或 ps aux --sort %mem 这两条命令是一样的,也可以使用 ps aux --sort=+%mem 或 ps aux --sort +%mem,%mem 前面默认有一个加号 + ,加不加上结果都是一样的,都表示升序排序,如果想要降序排序并且看到字段标题可以在 %mem 前面加上减号 -,如下所示:

5.根据特定条件过滤

在这里介绍一下和 grep 命令结合使用

仅仅显示一个名为 sshd 的进程信息

以上就是 Linux 使用 ps 查看进程的部分比较常用的操作命令

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门