文章摘自:http://www.cnblogs.com/mchina/archive/2013/03/15/2858041.htmlhtml
1、htop 简介bash
This is htop, an interactive process viewer for Linux. It is a text-mode application (for console or X terminals) and requires ncurses.app
Comparison between htop and topssh
In 'htop' you can scroll the list vertically and horizontally to see all processes and complete command lines.ide
In 'top' you are subject to a delay for each unassigned key you press (especially annoying when multi-key escape sequences are triggered by accident).ui
'htop' starts faster ('top' seems to collect data for a while before displaying anything).spa
In 'htop' you don't need to type the process number to kill a process, in 'top' you do..net
In 'htop' you don't need to type the process number or the priority value to renice a process, in 'top' you do.命令行
'htop' supports mouse operation, 'top' doesn't线程
'top' is older, hence, more used and tested.
htop 是Linux系统中的一个互动的进程查看器,一个文本模式的应用程序(在控制台或者X终端中),须要ncurses。
与Linux传统的top相比,htop更加人性化。它可以让用户交互式操做,支持颜色主题,可横向或纵向滚动浏览进程列表,并支持鼠标操做。
与top相比,htop有如下优势:
能够横向或纵向滚动浏览进程列表,以便看到全部的进程和完整的命令行。
在启动上,比top 更快。
杀进程时不须要输入进程号。
htop 支持鼠标操做。
top 已经很老了。
htop 官网:http://htop.sourceforge.net/
2、htop 安装
a. 源码包安装
# tar zxvf htop-1.0.2.tar.gz
# cd htop-1.0.2
# ./configure
# make && make install
若出现错误:
configure: error: You may want to use --disable-unicode or install libncursesw.
则需安装 ncurses-devel
# yum install ncurses-devel
b. RHEL/CentOS 安装
能够经过 yum install htop 来安装它,但前提是要添加epel 的yum源,具体请参考 CentOS yum 源的配置与使用。
# rpm -ivh http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL //导入key
# yum install htop
3、htop 参数
键入htop 命令,打开htop。
# htop
上面左上角显示CPU、内存、交换区的使用状况,右边显示任务、负载、开机时间,下面就是进程实时情况。
下面是 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 设置延迟更新时间,单位秒
-h --help 显示htop 命令帮助信息
-u --user=USERNAME 只显示一个给定的用户的过程
-p --pid=PID,PID… 只显示给定的PIDs
-s --sort-key COLUMN 依此列来排序
-v –version 显示版本信息
交互式命令(INTERACTIVE COMMANDS)
上下键或PgUP, PgDn 选定想要的进程,左右键或Home, End 移动字段,固然也能够直接用鼠标选定进程;
Space 标记/取消标记一个进程。命令能够做用于多个进程,例如 "kill",将应用于全部已标记的进程
U 取消标记全部进程
s 选择某一进程,按s:用strace追踪进程的系统调用
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 按Memory 使用排序
P 按CPU 使用排序
T 按Time+ 使用排序
F 跟踪进程: 若是排序顺序引发选定的进程在列表上处处移动,让选定条跟随该进程。这对监视一个进程很是有用:经过这种方式,你可让一个进程在屏幕上一直可见。使用方向键会中止该功能。
K 显示/隐藏内核线程
H 显示/隐藏用户线程
Ctrl-L 刷新
Numbers PID 查找: 输入PID,光标将移动到相应的进程上
4、htop 使用
4.1. 显示自带帮助
鼠标点击Help或者按F1 显示自带帮助
4.2. htop 设定
鼠标点击Setup或者按下F2 以后进入htop 设定的页面,Meters 页面设定了顶端的一些信息显示,顶端的显示又分为左右两侧,到底能显示些什么能够在最右侧那栏新增,要新增到上方左侧(F5)或是右侧(F6)均可以,这就是我的设定的范围了。这里多加了一个时钟。
上方左右两栏的显示方式分为Text Bar Graph Led 四种,下图我就把 cpu memory swap 改为文本模式显示,而后右栏的改为Bar 显示,clock 用LED方式显示。数据显示都差很少,只是这样看有点不习惯了。
关于Display options 的设定,可要根据管理者本身的须要来设定。
颜色选择,除了基本的颜色显示以外,htop 还提供了换面板的功能,其实也只是改变一些色彩显示的设定,虽说不能自定义到细部的颜色显示,可是至少提供了几种风格能够选择。
最后一项的设定是调整 Columns 的显示,就是在通常htop 指令进来但愿能够看到的什么样的数据及信息,字段的调整能够在这边作我的化的设定,通常使用系统默认值就行了。
4.3. 搜索进程
鼠标点击Search 或者按下F3 或者输入"/", 输入进程名进行搜索,例如搜索ssh
4.4. 过滤器
按下F4,进入过滤器,至关于关键字搜索,不区分大小写,例如过滤dev
4.5. 显示树形结构
输入"t"或按下F5,显示树形结构,意思跟pstree 差很少,能看到全部程序树状执行的结构,这对于系统管理来讲至关方便,理清程序是如何产生的,固然树状结构的浏览也能够依照其余数据来排序。
4.6. 选择排序方式
按下F6 就能够选择依照什么来排序,最常排序的内容就是cpu 和memory 吧!
4.7 操做进程
F七、F8分别对应nice-和nice+,F9对应kill给进程发信号,选好信号回车就OK了
4.8. 显示某个用户的进程,在左侧选择用户
输入"u",在左侧选择用户
5、Alias top
也许你用惯了top,咱们也能够用top来打开htop。
编辑/root/.bashrc文件,添加以下代码
if [ -f /usr/local/bin/htop ]; then alias top=’/usr/local/bin/htop’fi
# source /root/.bashrc