Linux常用命令_top

Posted Beng Dou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令_top相关的知识,希望对你有一定的参考价值。

  top命令动态展示系统整体资源和各个进程资源占用状况,是Linux下常用的性能分析工具。

top命令语法

  使用格式:top [-] [d] [b] [H] [p] [q] [c] [C] [S] [s] [n]

  参数说明:

d 指定每次屏幕刷新间隔时间。
p 通过进程ID查看指定进程的状态。
n 刷新次数,完成后自动退出
b 批次模式,搭配"n"参数一起使用,可以用来将top的结果重定向到文件
H 查看线程占用资源状态
u 查看指定用户进程占用资源情况 
c 显示整个命令行而不只是显示命令名

top使用实例

  查看进程ID为6663的资源占用情况,每隔2秒刷新一次,总共查看10次

top -b -p 6663 -d 2 -n 10
top -b -p 6663 -d 2 -n 10 > data.txt #重定向到文件

  查看进程ID为6663的线程资源占用情况,性能测试常用。区别就是加参数-H

top -b -H -p 6663 -d 2 -n 10
top -b -H -p 6663 -d 2 -n 10 > data.txt #重定向到文件

top命令默认输出关键信息解读

top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48
Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:    191272k total,   173656k used,    17616k free,    22052k buffers
Swap:   192772k total,        0k used,   192772k free,   123988k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
1379 root      16   0  7976 2456 1980 S  0.7  1.3   0:11.03 sshd
14704 root      16   0  2128  980  796 R  0.7  0.5   0:02.72 top
1 root      16   0  1992  632  544 S  0.0  0.3   0:00.90 init
2 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0

第1行:load average: 0.06, 0.60, 0.48。系统负载统计汇总

  load average,表示系统负载(任务队列的平均长度), 三个数值分别为1、5、15分钟前到现在的平均值。如果这个数除以逻辑CPU个数,结果高于5就表明系统在超负荷运转。

第3行:Cpu(s): 0.3% us, 1.0% sy, 0.0% ni,98.7% id, 0.0% wa, 0.0% hi, 0.0% si。CPU使用信息汇总

us 用户空间占用CPU百分比
sy 内核空间占用CPU百分比
ni 用户进程空间内改变过优先级的进程占用CPU百分比
id 空闲CPU百分比
wa I/O等待的CPU时间百分比
hi 硬件CPU中断占用百分比
si 软中断占用百分比
st 虚拟机占用百分比

第4行:Mem: 191272k total, 173656k used, 17616k free, 22052k buffers。内存使用情况汇总。

第5行:Swap:  192772k total, 0k used, 192772k free, 123988k cached。交换空间使用情况汇总。

进程资源占用情况各字段含义解读

PID 进程id 
PPID 父进程id 
USER 进程所有者的用户名 
PR 优先级 
NI nice值。负值表示高优先级,正值表示低优先级
VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES 
RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA 
SHR 共享内存大小,单位kb
S 进程状态。D为不可中断的睡眠状态 R为运行 S为睡眠 T为跟踪/停止 Z为僵尸进程 
%CPU 上次更新到现在的CPU时间占用百分比 
TIME 进程使用的CPU时间总计,单位秒 
TIME+ 进程使用的CPU时间总计,单位1/100秒 
%MEM 进程使用的物理内存百分比
COMMAND 进程名称

top交互命令

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

其他

按数字1,查看各CPU性能数据,再按数字1,返回
"Shift + <""Shift + >",翻页查看进程资源占用信息

 

以上是关于Linux常用命令_top的主要内容,如果未能解决你的问题,请参考以下文章

Linux部分常用高级命令—top

linux系统管理常用命令--top

Linux 常用命令 | top 详解

Linux系统分析常用指令

一文详解 Linux 系统常用监控工具(top,htop,iotop,iftop)

性能监控命令top详解杭州多测师杭州多测师_王sir