htop 官网:http://htop.sourceforge.net/
Linux top 命令的用法详细详解:https://www.cnblogs.com/zhoug2020/p/6336453.html
htop 使用详解:https://www.cnblogs.com/programmer-tlh/p/11726016.html
使用 yum 无法直接安装 htop,需要先安装 epel-release
yum -y install epel-release
yum -y install htop
htop 简介
htop 类似于 top 命令,但可以让你在垂直和水平方向上滚动,所以你可以看到系统上运行的所有进程,以及他们完整的命令行。可以不用输入进程的 PID 就可以对此进程进行相关的操作 (killing, renicing)。htop 是 Linux 系统中的一个互动的进程查看器,一个文本模式的应用程序(在控制台或者X终端中),需要ncurses。与 Linux传统的 top 相比,htop 更加人性化。它可让用户交互式操作,支持颜色主题,可横向或纵向滚动浏览进程列表,并支持鼠标操作。与 top 相比,htop有以下优点:
- 可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行。
- 在启动上,比top 更快。
- 杀进程时不需要输入进程号。
- htop 支持鼠标操作。
- top 已经很老了。
htop 参数
可以使用命令:apt-get install htop 来安装 htop,安装完成之后,键入 htop 命令,打开 htop。
可以看到总共分四个区域:
- 第一区域:CPU、内存、Swap的使用情况;
- 第二区域:任务、线程、平均负载及系统运行时间的信息。平均负载部分提供了三个数字,这仅仅表示的是过去的5分钟、10分钟和15分钟系统的平均负载而已,在单核的系统中平均负载为1表示的是百分之百的 CPU 利用率。最后,运行时间 (uptime)标示的数字是从系统启动起到当前的运行总时间。
- 第三区域:当前系统中的所有进程。各列说明:
PID:进程标志号,是非零正整数
USER:进程所有者的用户名
PR:进程的优先级别
NI:进程的优先级别数值
VIRT:进程占用的虚拟内存值
RES:进程占用的物理内存值
SHR:进程使用的共享内存值
S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数
%CPU:该进程占用的CPU使用率
%MEM:该进程占用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间
COMMAND:进程启动的启动命令名称 - 第四区域:当前界面中F1-F10功能键中定义的快捷功能。即 底部菜单栏。
F1 ~ F10 的功能和对应的字母快捷键
Shortcut Key | Function Key | Description | 中文说明 |
h, ? | F1 | Invoke htop Help | 查看htop使用说明 |
S | F2 | Htop Setup Menu | htop 设定 |
/ | F3 | Search for a Process | 搜索进程 |
\ | F4 | Incremental process filtering | 增量进程过滤器 |
t | F5 | Tree View | 显示树形结构 |
<, > | F6 | Sort by a column | 选择排序方式 |
[ | F7 | Nice - (change priority) | 可减少nice值,这样就可以提高对应进程的优先级 |
] | F8 | Nice + (change priority) | 可增加nice值,这样就可以降低对应进程的优先级 |
k | F9 | Kill a Process | 可对进程传递信号 |
q | F10 | Quit htop | 结束htop |
命令行选项(COMMAND-LINE OPTIONS)
-C --no-color | 使用一个单色的配色方案(设置界面为无颜色) |
-d --delay=DELAY | 设置延迟更新时间,单位秒(设置刷新时间,单位为秒) 例如,htop -d 100 命令会使输出在1秒后才会刷新(参数 -d 的单位是10微秒)。 |
-h --help | 显示htop 命令帮助信息 |
-u --user=USERNAME | 只显示一个给定的用户的过程(显示指定用户的进程) 例如,htop -u himanshu 命令会只显示出用户名为 himanshu 的相关进程。 |
-p --pid=PID,PID… | 只显示给定的PIDs |
-s --sort-key COLUMN | 依此列来排序(以指定的列排序)。 例如,htop -s PID 命令会按 PID 列的大小排序来显示。 |
-v –version | 显示版本信息 |
常用的交互式命令(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进程)
htop 使用
显示自带帮助:鼠标点击 Help 或者 按F1 显示 自带帮助
htop 设定:鼠标点击 Setup 或者按下 F2 之后进入 htop 设定的页面。只需使用箭头键选择和更改特定的设置。
Setup 选项下的:
- 1. Meters:设定顶端的显示信息,分为左右两侧,Left column 表示左侧的显示的信息,Right column表示右侧显示的信息,如果要新加选项,可以选择Available meters添加,F5新增到上方左侧,F6新增到上方右侧。Left column和Right column下面的选项,可以选定信息的显示方式,有LED、Bar(进度条)、Text(文本模式),可以根据个人喜好进行设置
- 2. Display options:选择要显示的内容,按空格 x 表示显示,选择完后,按F10保存
- 3. Colors:设定界面以什么颜色来显示,个人认为用处不大,各人喜好不同
- 4. Colums:作用是增加或取消要显示的各项内容,选择后F7(向上移动)、F8(向下移动)、F9(取消显示、F10(保存更改))此处增加了PPID、PGRP,根据各人需求,显示那些信息。
Meters 页面设定了顶端的一些信息显示,顶端的显示又分为左右两侧,到底能显示些什么可以在最右侧那栏新增,要新增到上方左侧(F5)或是右侧(F6)都可以,这就是个人设定的范围了。这里多加了一个时钟。
我们也可以自定义进程区域中的显示内容:
- 搜索进程:鼠标点击Search 或者按下F3 或者输入"/", 输入进程名进行搜索,例如搜索ssh
- 过滤器:按下F4,进入过滤器,相当于关键字搜索,不区分大小写,例如过滤dev。
- search 和 filter 的区别 :search 会将光标定位到符合条件的进程上,通过 F3 键进行逐个查找;而 filter 会直接将符合条件的进程筛选出来。search 和 filter 都使用 ESC 键来取消功能。
- 显示树形结构:输入 "t" 或 按下 F5,显示树形结构,意思跟 pstree 差不多,能看到所有程序树状执行的结构,这对于系统管理来说相当方便,理清程序是如何产生的,当然树状结构的浏览也可以依照其他数据来排序。退出树状视图模式,请再一次按下 F5 键。
- 选择排序方式:按下 F6 就可以选择依照什么来排序,最常排序的内容就是 cpu 和 memory 吧!
- F7、F8分别对应 nice- 和 nice+:F7 表示减小 nice值(增大优先级),F8增大nice值(减小优先级),选择某一进程,按F7或F8来增大或减小nice值,nice值范围为-20-19
- F9 对应 kill 给进程发信号,选好信号回车就OK了( F9:杀掉指定进程)。选择某一进程按 F9 即可杀死此进程,如下图所示:窗口的左边部分列出的是所有可用的信号,右边部分列出的是进程。只要选中信号,并选择一个进程,然后按下 enter 键,选中的信号就会发送到此进程。
- F10:退出htop。
- 空格键:用于标记选中的进程,用于实现对多个进程同时操作;要标注某个进程条目,需要做的就是选中此条目,然后按下空格键。
- 显示某个用户的进程:在左侧选择用户:输入"u",在左侧选择用户
Alias top:也许你用惯了 top,我们也可以用 top 来打开 htop。
编辑/root/.bashrc文件,添加如下代码:
if [ -f /usr/local/bin/htop ]; thenalias top=’/usr/local/bin/htop’
fi
source /root/.bashrc