Think before you speak, read before you think.

linux工具之top/htop

主要介绍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

=

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *