shell查看进程指令

                 

                  

目录

ps

        aux

        elf

top

pstree

        -aup


进程是在 CPU 及内存中运行的程序代码,而每个进程可以创建一个或多个进程(父子进程)。

方法:

1、ps aux
2、ps -elf


ps

Linux 中的 ps 命令是 Process Status 的缩写。
ps 命令是最基本同时也是非常强大的进程查看命令。

ps 命令用来列出系统中当前运行的那些进程。
ps 命令列出的是当前那些进程的 快照,就是执行 ps 命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用 top 命令。

ps 命令用于报告当前系统中的进程状态,可以搭配 kill 指令随时中断、删除不必要的程序。
使用 ps 命令可以确定有哪些进程正在运行,以及运行的状态、进程是否结束、进程有没有僵死 ( z )、哪些进程占用了过多的资源(cpu 和内存)等等,总之大部分信息都是可以通过执行该命令得到的。


aux

ps 指令有很多的参数,不同的参数的功能不同:
ps aux 是以简单列表的形式显示出进程信息,

选项 含义
a 显示当前终端下的所有进程信息,包括其他用户的进程。
u

使用以用户为主的格式输出进程信息,user 为第一列;

如果没有 u 参数,则 PID 是第一列。

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

ps aux 命令的输出如下所示:

shell查看进程指令_第1张图片

以上信息的字段的含义解释如下:

字段  含义
USER

启动该进程的用户账号名称。

因为一台服务器可以有很多用户,每个用户都可以启动进程。

PID 该进程的 ID 号,在当前系统中是唯一的。需要杀死进程的时候,就是 kill pid 命令杀死进程。
%CPU CPU 占用的百分比。可以超过 100,因为 linux 系统一般都是多核心的。如果是 10 个核心,那总共就是 1000%。
%MEM 内存占用的百分比
VSZ 占用虚拟内存(swap空间)的大小。VSZ 表示如果一个程序完全驻留在内存的话需要占用多少内存空间;
RSS 占用常驻内存(物理内存)的大小。RSS 指明了当前实际占用了多少内存;
TTY 该进程在哪个终端上运行。? 表未知或不需要终端。
STAT

显示了进程当前的状态

S(休眠):大S, 进程处在睡眠状态,表明这些进程在等待某些事件发生–可能是用户输入或者系统资源的可用性;

R(运行): 正在运行,或者即将要运行

Z(僵死):在一个进程调用了 exit 之后,该进程并非马上就消失掉,而是留下一个称为僵尸进程(Zombie)的数据结构。在 Linux 进程的5种状态中,僵尸进程是非常特殊的一种,它已经放弃了几乎所有内存空间,没有任何可执行代码,也不能被调度,仅仅在进程列表中保留一个位置,记载该进程的退出状态等信息供其他进程收集,除此之外,僵尸进程不再占有任何内存空间。对处于僵死状态的进程应予以手动终止。

<(高优先级)、N(低优先级)、s(父进程):小 s , 进程的领导者(在它之下有子进程);

+(前台进程):比如你执行 python aaa.py 命令,则就是前台执行,就会有 + 显示,但是如果你执行 python aaa.py & 命令,则就是后台执行,就不会有 +

START 启动该进程的时间
TIME 该进程占用 CPU 时间
COMMAND  启动该进程的命令的名称

   
    
 


  

elf

两者的输出结果差别不大,但展示风格不同。

aux BSD 风格,-ef System V 风格。
这是次要的区别,一个影响使用的区别是 aux 会截断 command 列,而 -ef 不会。

当结合 grep 时这种区别会影响到结果。

字段 含义
-e 显示系统内的所有进程信息,及显示系统中所有用户的进程。
-l  使用长(long)格式显示进程信息。
-f 使用完整的(full)格式显示进程信息,及不会截断

ps elf 命令的输出大部分同 ps aux 的输出大部分一样,PPID 为父进程的 PID
输出信息如下所示:

shell查看进程指令_第2张图片
上面图片中的 UID 是启动该进程的用户,PID 是进程的 id,是唯一的。


top

交互式的,实时动态显示,默认情况下每3秒更新一次。
以全屏交互式的界面显示进程排名,及时跟踪包括 CPU、内存等系统资源占用情况,按 ctrl + c 终止。其作用基本类似于 Windows 系统中的任务管理器。


top 命令的输出信息如下所示:

shell查看进程指令_第3张图片

用户在键盘上敲击 m 键,则以占用内存的大小排序;
用户在键盘上敲击 c 键,则以占用 cpu 的大小排序。

上图信息的字段含义如下所示,

字段 含义
Tasks

(系统任务)信息

total    总进程数
running    正在运行的进程数
sleeping    休眠的进程数
stopped    中止的进程数
zombie    僵死无响应的进程数

CPU(s)

us,用户占用;
sy,内核占用;
ni,优先级调度占用;
id,空闲CPU
waI/O 等待占用;
hi,硬件中断占用;
si,软件中断占用;
st,虚拟化占用。

了解空闲的 CPU 百分比,主要看 %id 部分。

Mem

(内存)信息。

total,总内存空间;
used,已用内存;
free,空闲内存;
buffers,缓存区域。

Swap

(交换空间)信息

total,总交换空间;
used,已用交换空间;
free,空闲交换空间;
cached,缓存空间。

pstree


-aup

以树状图的方式展现进程之间的派生关系,显示效果比较直观。

pstree -aup 命令的输出信息如下所示:

shell查看进程指令_第4张图片

选项 含义
-a 显示每个程序的完整指令,包含路径,参数或是常驻服务的标示;
-c 不使用精简标示法;
-G 使用VT100终端机的列绘图字符;
-h 列出树状图时,特别标明现在执行的程序;
-H <程序识别码>:此参数的效果和指定 -h 参数类似,但特别标明指定的程序;
-l 采用长列格式显示树状图;
-n 用程序识别码排序。预设是以程序名称来排序;
-p 显示程序识别码;
-u   显示用户名称;

参考链接:Shell | 查看进程的方法的不完全总结_shell查看进程_MissMango0820的博客-CSDN博客

你可能感兴趣的:(linux,服务器,centos)