主要介绍top
第一行:
时间 运行时间 登陆用户数 系统负载(任务队列的平均长度,分别为1分钟、5分钟、15分钟前到现在的平均值。)
top - 08:36:25 up 19 min, 2 users, load average: 1.33, 0.86, 0.60
负载的意思是在 run queue 中的进程数量除以 cpu 。 小于 cpu 个数都算没有超负载。
第二行:
进程总数 正在运行进程数 睡眠进程数 停止进程数 僵尸进程数
Tasks: 179 total, 1 running, 178 sleeping, 0 stopped, 0 zombie
第三行:
cpu信息,按1显示每个cpu的情况,us表示进程处理所占的百分比,ni表示被nice改变优先级的命令占的百分比,id表示idle空闲, hi 代表 hardware interrupts,si 代表 software interrupst, 通过 cat /proc/interrupts 可以查看中断。
Cpu(s): 4.8%us, 1.7%sy, 0.0%ni, 93.2%id, 0.3%wa, 0.0%hi, 0.0%si, 0.0%st
四行、五行为内存和swap信息
在进程信息栏中,查看进程更丰富的信息,h或?,会显示帮助命令
列出常用的控制命令有
M 根据驻留内存大小进行排序(常用)
P 根据CPU使用百分比大小进行排序(常用)
T 根据时间/累计时间进行排序(常用)
R 将当前的排序倒转(常用)
N 按进程ID排序
u 可输入用户进行筛选
空格 立即刷新信息
k输入想要kill掉的进程ID号
一页显示不完整,使用<>分别上下翻页
控制显示的列:
f 可控制显示列输出的内容, 对应a-z
o键 可改变列的顺序,大写字母往左(上),小写字母身右(下)
大写O 调整按某列排序
过滤 nginx 用户执行的程序
shift + u 然后输入 nginx
或者在开始的时候就
top -u nginx
只显示某几个进程,跟进程号
top -p 9943,11162
只打印一次并重定向到文件中
top -b -n 1 >> top1.txt
按 z 显示颜色
对于 mysqld 单进程多线程,默认其他线程会收缩起来,如果要显示按 H
按 i 不显示空闲的进程及僵尸进程
top 默认每 3 秒刷新一次,按 d 或 s 按提示可以输入想要的刷新间隔
显示某个进程运行在某个 cpu 上,按 f 找到 Last used cpu ,按 j 选取上,这样显示就有此进程使用哪个 cpu 了。如果一个软件长期运行在一个 cpu 上,那么有可能是设置错误。
按 F 根据某一列排序
按 c 显示具体的进程名字
当进行完上面的设置之后,按 W 保存当前的配置到 ~/.toprc 下次会直接调用。
显示进程和线程
top -H
排序后只取前 n 位,按 n,输入数字
设置 filter
按 o
输入过滤条件,字段上面的都可以输入,如
%CPU>100.0
COMMAND=java
查看当前的 filter
Ctrl + o
清空当前的 filter
=
Leave a Reply