一、什么是htop
top是所有类linux系统的必备工具,能直观方便的查看到系统负载、内存及进程等信息。
而htop具有top工具的全部功能且还新增了一些额外的功能和使用体验改进。与top相比,其具有如下优势:
- 与top只提供最消耗资源的进程列表不同,htop提供所有进程的列表,并且使用彩色标识出处理器、swap和内存状态。
- 可以在查找应用程序内存泄漏问题时使用;
- 提供更方便、光标控制的界面来杀死进程;
- 可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行;
- 启动比top快。
二、安装htop
yum install -y htop
三、使用htop
命令行中直接敲击htop命令即可
htop
左边部分:从上至下分别为,cpu、内存、交换分区的使用情况。
右边部分:Tasks为进程总数,当前运行的进程数、Load average为系统1分钟,5分钟,10分钟的平均负载情况、Uptime为系统运行的时间。
- PID:进行的标识号
- USER:运行此进程的用户
- PRI:进程的优先级
- NI:进程的优先级别数值
- VIRT:进程占用的虚拟内存值
- RES:进程占用的物理内存值
- SHR:进程使用的共享内存值
- S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数
- %CPU:该进程占用的CPU使用率
- %MEM:该进程占用的物理内存和总内存的百分比
- TIME+:该进程启动后占用的总的CPU时间
- COMMAND:进程启动的启动命令名称
除了上面介绍的一些热键,htop 还提供了很有用的命令行选项。下面是其中一部分:
- -s 选项 : 按指定的列排序。例如,htop -s PID 命令会按 PID 列的大小排序来显示。
- -u 选项 : 显示指定的用户的进程信息列表。例如,htop -u himanshu 命令会只显示出用户名为 himanshu 的相关进程。
- -d 选项 : 设置刷新的延迟时间。例如,htop -d 100 命令会使输出在1秒后才会刷新(参数 -d 的单位是10微秒)。
快捷键 | 按键 | 功能 |
---|---|---|
h, ? | F1 | 查看htop使用说明 |
S | F2 | htop 设定 |
/ | F3 | 搜索进程 |
\ | F4 | 增量进程过滤器 |
t | F5 | 显示树形结构 |
<, > | F6 | 选择排序方式 |
[ | F7 | 可减少nice值可以提高对应进程的优先级 |
] | F8 | 可增加nice值,降低对应进程的优先级 |
k | F9 | 可对进程传递信号 |
q | F10 | 结束htop |
常用的交互式命令(INTERACTIVE COMMANDS)
交互命令 用 上档键 shift 。
常用命令:
shift + m : 按照内存大小排序。
shift + h : 收缩线程。
q : 退出
上下键 或 PgUP,PgDn : 选定想要的进程,
左右键 或 Home,End : 移动字段,当然也可以直接用鼠标选定进程;
Space 标记/取消标记一个进程(类似 windows 按着 Ctrl 多选一样 )。命令可以作用于多个进程,例如 "kill",将应用于所有已标记的进程
U 取消所有选中的进程
s 选择某一进程,按 s: 用 strace 追踪进程的系统调用。(s:显示光标所在进程执行的系统调用;)
l 显示进程打开的文件: 如果安装了 lsof,按此键可以显示进程所打开的文件
I 倒转排序顺序,如果排序是正序的,则反转成倒序的,反之亦然
+, - When in tree view mode, expand or collapse subtree.
When a subtree is collapsed a "+" sign shows to the left of the process name.
a (在有多处理器的机器上) 设置 CPU affinity: 标记一个进程允许使用哪些CPU
u 显示特定用户进程
M 按照 内存使用百分比 排序, 对应 MEM%列;
P 按照 CPU使用百分比 排序,对应 CPU%列;
T 按照 进程运行的时间 排序,对应TIME+列;
F 跟踪进程: 如果排序顺序引起选定的进程在列表上到处移动,让选定条跟随该进程。
这对监视一个进程非常有用:通过这种方式,你可以让一个进程在屏幕上一直可见。使用方向键会停止该功能。
K 显示/隐藏内核线程
H 显示/隐藏用户线程
# 快速定位光标到PID所指定的进程上。
Ctrl + L 刷新
Numbers PID 查找:。输入PID,光标将移动到相应的进程上(即 直接输入数字,查找对应的PID进程)