linux top交互命令用法举例

发布时间:2020-07-13编辑:脚本学堂
本文介绍了linux top命令的用法,在top命令执行过程中一些交互命令,从使用角度来看,熟练的掌握这些命令比掌握选项还重要一些。这些命令都是单字母的,需要的朋友参考下。

在top命令执行过程中一些交互命令:
从使用角度来看,熟练的掌握这些命令比掌握选项还重要一些。这些命令都是单字母的,

top命令行参数

-b   批处理模式(batch mode),可输出到管道、文件。默认情况下-b会一直输出,可以用-nN指定输出次数。
-n N限制输出次数。
-d N    刷新时间间隔
-p PID  监控指定进程。
-H -p PID   监控指定进程和进行内线程信息。
进入top界面后的操作

按键 说明
c 显示完整的命令名。c为Command之意。
d 修改刷新时间。d为Display之意。
u 显示指定用户相关进程。u为User之意。
P 按CPU使用排序。P为Processor(处理器)之意。
M 按内存使用排序。M为Momery之意。
F 排序(进入新的界面,并选择排序的目标字段)。
R 顺序或逆序。
H 显示线程
Z 以多色彩显示top。
l/t/m toggle,load/cpu/内存信息
1 显示多CPU的信息(多核机器上查看每个CPU的使用率)。
W 保存当前top的配置

1、输入1可以看到CPU各个核的CPU负载
 

Cpu0 : 1.0%us, 3.0%sy, 0.0%ni, 96.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

这里对us,sy,ni,id,wa,hi,si,st进行分别说明:

us  列显示了用户模式下所花费 CPU 时间的百分比。
us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,需要考虑优化用户的程序。
sy   列显示了内核进程所花费的cpu时间的百分比。
这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足。
ni   列显示了用户进程空间内改变过优先级的进程占用CPU百分比。
id   列显示了cpu处在空闲状态的时间百分比。
wa 列显示了IO等待所占用的CPU时间的百分比。

这里wa的参考值为30%,如果wa超过30%,说明IO等待严重,这可能是磁盘大量随机访问造成的,也可能磁盘或者磁盘访问控制器的带宽瓶颈造成的(主要是块操作)。
//这个wa和vmstat中的wa是相同含义
hi   硬件中断占用CPU
si   软件中断占用CPU
st  丢失时间占用CPU

在后台服务器开发中需要关注us,sy,id,wa等常用指标。

2、top输入u,输入用户名,查看指定用户的进程信息
u  输入用户名  查看指定用户的进程信息(多个用户使用同一台机器开发时,非常有用)

3、按CPU占用率排序
Shift+p     按CPU排序

4、按内存占用率排序
Shift+m    按内存使用排序

5、按CPU占用时间排序
Shift+t      按CPU用时排序

其它:
Shift+n     按PID排序

注意:
如果在命令行选项中使用了s选项,则可能其中一些命令会被屏蔽掉。