一、Top命令介绍
Top命令是Linux系统下的一款进程管理工具,它能够动态地查看系统进程的资源占用情况,包括CPU占用率、内存占用率、磁盘IO等。
Top命令可以按照CPU占用率、内存占用率、进程ID等排序方式展示系统进程,通过Top命令可以快速定位到CPU、内存、IO等资源占用过高的进程,为系统管理员提供了一个方便的管理工具。
二、Top命令参数
Top命令的常用参数如下:
top -d time #指定刷新时间,默认为3s top -u user #指定用户 top -p pid #指定进程ID top -H #展示线程信息 top -b #以批处理模式运行 top -i #不显示闲置进程
三、查看系统进程资源占用情况
1. 查看系统CPU占用率
top -d 2 -b -n 1 | grep Cpu
该命令将以批处理模式运行Top命令,每2秒刷新一次,执行1次后退出,通过grep命令过滤出CPU信息。结果如下:
Cpu(s): 4.1%us, 1.0%sy, 0.0%ni, 93.9%id, 0.3%wa, 0.0%hi, 0.0%si, 0.7%st
其中,us表示用户进程占用CPU的百分比,sy表示系统进程占用CPU的百分比,ni表示进程优先级变化占用CPU的百分比,id表示CPU闲置的百分比,wa表示IO等待占用CPU的百分比,hi表示处理硬件中断占用CPU的百分比,si表示处理软件中断占用CPU的百分比,st表示虚拟机丢失占用CPU的百分比。
2. 查看系统内存占用情况
top -d 2 -b -n 1 | grep Mem
该命令将以批处理模式运行Top命令,每2秒刷新一次,执行1次后退出,通过grep命令过滤出内存信息。结果如下:
KiB Mem : 4029820 total, 3516656 free, 157748 used, 354416 buff/cache
其中,total表示总内存,free表示空闲内存,used表示占用内存,buff/cache表示缓存使用内存。
3. 查看系统磁盘IO
top -d 2 -b -n 1 | grep 'io\|sda\|sdb'
该命令将以批处理模式运行Top命令,每2秒刷新一次,执行1次后退出,通过grep命令过滤出IO信息。结果如下:
KiB Wrtn/s: 18.63 KiB Rd/s: 18.63
其中,Wrtn表示写入速率,Rd表示读取速率。
四、Top命令操作
1. 切换排序方式
在Top命令界面下,可以通过按下以下按键切换排序方式:
P:按CPU使用率排序 M:按内存使用率排序 T:按时间/累计时间排序
2. 进程操作
在Top命令界面下,可以通过按下以下按键操作进程:
k:强制终止进程 r:修改进程优先级 u:进程列表切换用户名模式 z:进程列表开启或关闭颜色显示模式 c:显示进程的完整命令
五、Top命令输出格式
Top命令输出格式如下:
top - 23:23:23 up 2:53, 1 user, load average: 0.40, 0.48, 0.39 Tasks: 306 total, 2 running, 303 sleeping, 0 stopped, 1 zombie %Cpu(s): 4.0 us, 1.0 sy, 0.0 ni, 93.9 id, 0.3 wa, 0.0 hi, 0.0 si, 0.7 st MiB Mem : 4029.1 total, 3516.2 free, 147.1 used, 365.7 buff/cache MiB Swap: 0.0 total, 0.0 free, 0.0 used. 3782.7 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 19714 root 20 0 3737888 2.088g 2264 S 1.7 53.9 10:26.25 java 16253 root 20 0 862836 18.8m 55188 S 0.7 0.5 2:30.27 vmtoolsd 1 root 20 0 195260 6196 4100 S 0.3 0.2 0:06.15 systemd 2 root 20 0 0 0 0 S 0.3 0.0 0:01.92 kthreadd
输出格式可以分为以下几列:
第一列:进程ID 第二列:用户 第三列:进程优先级 第四列:进程虚拟内存占用量 第五列:进程实际内存占用量 第六列:进程共享内存占用量 第七列:进程所在CPU核心 第八列:进程占用CPU百分比 第九列:进程占用内存百分比 第十列:占用CPU的时间 第十一列:进程命令
六、总结
Top命令是Linux系统下非常有用的进程管理工具,通过Top命令可以动态地查看系统进程的资源占用情况,快速定位到资源占用过高的进程并进行管理。此外,Top命令还具备批处理、排序、操作、输出格式等多种功能,为系统管理员的工作提供了很大的方便。