top命令动态查看进程
访问量:5220

一、简介

top命令是linux下常用的性能分析工具,能够实时查看系统中各个进程占用资源的情况,比如内存占用率,cpu占用lv等。

二、语法

top [参数]

三、参数

-b 批处理
-c 显示完整的治命令
-I 忽略失效过程
-s 保密模式
-S 累积模式
-i<时间> 设置间隔时间
-u<用户名> 指定用户名
-p<进程号> 指定进程
-n<次数> 循环显示的次数

四、与top命令交互的快捷键

在top命令执行过程中,可以使用一些快捷键,进行交互。

1  可以监控每个逻辑cpu的状况
b  打开高亮显示功能,同时高亮显示top命令
h 显示帮助画面,给出一些简短的命令总结说明
k 终止一个进程。
i 忽略闲置和僵死进程。这是一个开关式命令。
q 退出程序
r 重新安排一个进程的优先级别
S 切换到累计模式
s 改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s
f或者F 从当前显示中添加或者删除项目
o或者O 改变显示项目的顺序
l 切换显示平均负载和启动时间信息
m 切换显示内存信息
t 切换显示进程和CPU状态信息
c 切换显示命令名称和完整命令行
M 根据驻留内存大小进行排序
P 根据CPU使用百分比大小进行排序
T 根据时间/累计时间进行排序
W 将当前设置写入~/.toprc文件中

五、top命令每一列代表什么意思

使用top命令,会展示出很多列的信息,那么每一列代表什么意思呢?

PID 进程id

USER 进程所有者

PR 进程优先级

NI nice值,负值表示高优先级,正值表示低优先级

VIRT 进程使用的虚拟内存总量,单位kb

RES 进程使用的、未被换出的物理内存大小,单位kb

SHR 共享内存大小,单位kb

S 进程状态 D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

%CPU 当前CPU时间占用百分比

%MEM 进程使用的物理内存百分比

TIME+ 进程使用的CPU时间总计,单位1/100秒

COMMAND 进程名称

1、关于S列说明

R是running或runnable的缩写,表示进程在cpu的就绪队列中,正在运行或是等待运行。

D是disk sleep缩写,是不可中断状态睡眠。一般表示进程正在和硬件交互,并且交互过程不允许被其他进程中断或是打断。

Z是zombie的缩写,即僵尸进程。即进程实际上已经结束了,但是父进程还没有回收它的资源。

S是interruptible sleep的缩写,是可中断状态睡眠。表示进程因为等待某个事件而被系统挂起。当进程等待的事件发生,他会被唤醒进入R状态。

I是Idle的缩写,即空闲状态。用在不可中断睡眠的内核线程觞。这类进程不会导致负载升高。

T是stopped或traced缩写,表示进程处于暂停或跟踪状态。

六、案例

1、如何依据某一列进行排序

默认情况下,top命令是依据cpu占用量来排序的,如下:

此时为了便于查看,我们打开排序高亮显示,首先按b打开高亮显示功能,然后按x打开排序高亮显示,如下:

如果我们想基于进程使用cpu的总时间TIME+来排序,怎么弄呢?

只需要按 “M”键即可

要想回到cpu排序,需要按“P”键即可