點擊返回架構師成長之路html
htop 是Linux系統中的一個互動的進程查看器,一個文本模式的應用程序(在控制檯或者X終端中),須要ncurses。linux
與Linux傳統的top相比,htop更加人性化。它可以讓用戶交互式操做,支持顏色主題,可橫向或縱向滾動瀏覽進程列表,並支持鼠標操做。shell
與top相比,htop有如下優勢:網絡
Htop的安裝,既能夠經過源碼包編譯安裝,也能夠配置好yum源後網絡下載安裝。架構
已經將文件下載在linux系統上面,而後解包。編輯器
tar -zxvf htop-1.0.2.tar.gzide
[root@CactiEZ /]# tar -zxvf htop-1.0.2.tar.gz
htop-1.0.2/
htop-1.0.2/config.sub
htop-1.0.2/htop.1.in
htop-1.0.2/AvailableMetersPanel.h
htop-1.0.2/Settings.h
htop-1.0.2/CategoriesPanel.c
htop-1.0.2/OpenFilesScreen.c
htop-1.0.2/UptimeMeter.c
htop-1.0.2/MetersPanel.c
htop-1.0.2/install-sh
htop-1.0.2/README
htop-1.0.2/AvailableColumnsPanel.c
htop-1.0.2/MemoryMeter.c
htop-1.0.2/SignalsPanel.c
htop-1.0.2/SwapMeter.h
htop-1.0.2/FunctionBar.c
htop-1.0.2/AvailableMetersPanel.c
htop-1.0.2/TasksMeter.c
htop-1.0.2/CategoriesPanel.h
htop-1.0.2/htop.c
htop-1.0.2/Vector.h
htop-1.0.2/Makefile.am
htop-1.0.2/autogen.sh
htop-1.0.2/BatteryMeter.h
htop-1.0.2/Affinity.h
htop-1.0.2/aclocal.m4
htop-1.0.2/LoadAverageMeter.h
htop-1.0.2/CheckItem.h
htop-1.0.2/htop.png
htop-1.0.2/configure
htop-1.0.2/FunctionBar.h
htop-1.0.2/depcomp
htop-1.0.2/Header.h
htop-1.0.2/IOPriority.c
htop-1.0.2/ColumnsPanel.h
htop-1.0.2/ColumnsPanel.c
htop-1.0.2/m4/
htop-1.0.2/m4/lt~obsolete.m4
htop-1.0.2/m4/ltoptions.m4
htop-1.0.2/m4/ltsugar.m4
htop-1.0.2/m4/ltversion.m4
htop-1.0.2/m4/libtool.m4
htop-1.0.2/UptimeMeter.h
htop-1.0.2/ListItem.h
htop-1.0.2/SignalsPanel.h
htop-1.0.2/IOPriorityPanel.h
htop-1.0.2/Settings.c
htop-1.0.2/htop.1
htop-1.0.2/configure.ac
htop-1.0.2/Meter.h
htop-1.0.2/MemoryMeter.h
htop-1.0.2/Header.c
htop-1.0.2/IOPriorityPanel.c
htop-1.0.2/CPUMeter.c
htop-1.0.2/ChangeLog
htop-1.0.2/UsersTable.c
htop-1.0.2/ltmain.sh
htop-1.0.2/HostnameMeter.h
htop-1.0.2/Affinity.c
htop-1.0.2/Hashtable.c
htop-1.0.2/BatteryMeter.c
htop-1.0.2/config.h
htop-1.0.2/Meter.c
htop-1.0.2/htop.desktop
htop-1.0.2/config.h.in
htop-1.0.2/RichString.c
htop-1.0.2/OpenFilesScreen.h
htop-1.0.2/String.h
htop-1.0.2/ClockMeter.c
htop-1.0.2/Process.h
htop-1.0.2/RichString.h
htop-1.0.2/ClockMeter.h
htop-1.0.2/AffinityPanel.h
htop-1.0.2/CRT.h
htop-1.0.2/ListItem.c
htop-1.0.2/SwapMeter.c
htop-1.0.2/CPUMeter.h
htop-1.0.2/Panel.c
htop-1.0.2/Panel.h
htop-1.0.2/ProcessList.h
htop-1.0.2/Object.h
htop-1.0.2/LoadAverageMeter.c
htop-1.0.2/AffinityPanel.c
htop-1.0.2/Process.c
htop-1.0.2/ScreenManager.h
htop-1.0.2/MetersPanel.h
htop-1.0.2/String.c
htop-1.0.2/INSTALL
htop-1.0.2/UsersTable.h
htop-1.0.2/TasksMeter.h
htop-1.0.2/NEWS
htop-1.0.2/CRT.c
htop-1.0.2/htop.h
htop-1.0.2/TraceScreen.h
htop-1.0.2/AUTHORS
htop-1.0.2/ScreenManager.c
htop-1.0.2/ColorsPanel.c
htop-1.0.2/TraceScreen.c
htop-1.0.2/DisplayOptionsPanel.h
htop-1.0.2/ProcessList.c
htop-1.0.2/CheckItem.c
htop-1.0.2/IOPriority.h
htop-1.0.2/AvailableColumnsPanel.h
htop-1.0.2/compile
htop-1.0.2/HostnameMeter.c
htop-1.0.2/Makefile.in
htop-1.0.2/Object.c
htop-1.0.2/ColorsPanel.h
htop-1.0.2/Vector.c
htop-1.0.2/DisplayOptionsPanel.c
htop-1.0.2/scripts/
htop-1.0.2/scripts/MakeHeader.py
htop-1.0.2/missing
htop-1.0.2/COPYING
htop-1.0.2/Hashtable.h
htop-1.0.2/config.guess
[root@CactiEZ /]#
提示沒有安裝GNC C編輯器。如下安裝GNC C編輯器 。工具
yum -y install gcc網站
[root@CactiEZ /]# yum -y install gcc Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.tuna.tsinghua.edu.cn * updates: mirrors.tuna.tsinghua.edu.cn Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package gcc.i686 0:4.4.7-23.el6 set to be updated --> Processing Dependency: libgomp = 4.4.7-23.el6 for package: gcc-4.4.7-23.el6.i686 --> Processing Dependency: cpp = 4.4.7-23.el6 for package: gcc-4.4.7-23.el6.i686 --> Processing Dependency: libgcc >= 4.4.7-23.el6 for package: gcc-4.4.7-23.el6.i686 --> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.4.7-23.el6.i686 --> Processing Dependency: cloog-ppl >= 0.15 for package: gcc-4.4.7-23.el6.i686 --> Processing Dependency: libgomp.so.1 for package: gcc-4.4.7-23.el6.i686 --> Running transaction check ---> Package cloog-ppl.i686 0:0.15.7-1.2.el6 set to be updated --> Processing Dependency: libppl_c.so.2 for package: cloog-ppl-0.15.7-1.2.el6.i686 --> Processing Dependency: libppl.so.7 for package: cloog-ppl-0.15.7-1.2.el6.i686 ---> Package cpp.i686 0:4.4.7-23.el6 set to be updated --> Processing Dependency: libmpfr.so.1 for package: cpp-4.4.7-23.el6.i686 ---> Package glibc-devel.i686 0:2.12-1.212.el6 set to be updated --> Processing Dependency: glibc-headers = 2.12-1.212.el6 for package: glibc-devel-2.12-1.212.el6.i686 --> Processing Dependency: glibc = 2.12-1.212.el6 for package: glibc-devel-2.12-1.212.el6.i686 --> Processing Dependency: glibc-headers for package: glibc-devel-2.12-1.212.el6.i686 ---> Package libgcc.i686 0:4.4.7-23.el6 set to be updated ---> Package libgomp.i686 0:4.4.7-23.el6 set to be updated --> Running transaction check --> Processing Dependency: glibc = 2.12-1.7.el6 for package: glibc-common-2.12-1.7.el6.i686 ---> Package glibc.i686 0:2.12-1.212.el6 set to be updated ---> Package glibc-headers.i686 0:2.12-1.212.el6 set to be updated --> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.12-1.212.el6.i686 --> Processing Dependency: kernel-headers for package: glibc-headers-2.12-1.212.el6.i686 ---> Package mpfr.i686 0:2.4.1-6.el6 set to be updated ---> Package ppl.i686 0:0.10.2-11.el6 set to be updated --> Running transaction check ---> Package glibc-common.i686 0:2.12-1.212.el6 set to be updated --> Processing Dependency: tzdata >= 2015g-4 for package: glibc-common-2.12-1.212.el6.i686 ---> Package kernel-headers.i686 0:2.6.32-754.3.5.el6 set to be updated --> Running transaction check ---> Package tzdata.noarch 0:2018e-3.el6 set to be updated --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================== Package Arch Version Repository Size ======================================================================================================================================== Installing: gcc i686 4.4.7-23.el6 base 8.2 M Installing for dependencies: cloog-ppl i686 0.15.7-1.2.el6 base 93 k cpp i686 4.4.7-23.el6 base 3.4 M glibc-devel i686 2.12-1.212.el6 base 991 k glibc-headers i686 2.12-1.212.el6 base 628 k kernel-headers i686 2.6.32-754.3.5.el6 updates 4.5 M libgomp i686 4.4.7-23.el6 base 137 k mpfr i686 2.4.1-6.el6 base 153 k ppl i686 0.10.2-11.el6 base 1.3 M Updating for dependencies: glibc i686 2.12-1.212.el6 base 4.4 M glibc-common i686 2.12-1.212.el6 base 14 M libgcc i686 4.4.7-23.el6 base 115 k tzdata noarch 2018e-3.el6 base 495 k Transaction Summary ======================================================================================================================================== Install 9 Package(s) Upgrade 4 Package(s) Total download size: 38 M Downloading Packages: (1/13): cloog-ppl-0.15.7-1.2.el6.i686.rpm | 93 kB 00:00 (2/13): cpp-4.4.7-23.el6.i686.rpm | 3.4 MB 00:09 (3/13): gcc-4.4.7-23.el6.i686.rpm | 8.2 MB 00:23 (4/13): glibc-2.12-1.212.el6.i686.rpm | 4.4 MB 00:12 (5/13): glibc-common-2.12-1.212.el6.i686.rpm | 14 MB 00:41 (6/13): glibc-devel-2.12-1.212.el6.i686.rpm | 991 kB 00:02 (7/13): glibc-headers-2.12-1.212.el6.i686.rpm | 628 kB 00:01 (8/13): kernel-headers-2.6.32-754.3.5.el6.i686.rpm | 4.5 MB 00:13 (9/13): libgcc-4.4.7-23.el6.i686.rpm | 115 kB 00:00 (10/13): libgomp-4.4.7-23.el6.i686.rpm | 137 kB 00:00 (11/13): mpfr-2.4.1-6.el6.i686.rpm | 153 kB 00:00 (12/13): ppl-0.10.2-11.el6.i686.rpm | 1.3 MB 00:03 (13/13): tzdata-2018e-3.el6.noarch.rpm | 495 kB 00:01 ---------------------------------------------------------------------------------------------------------------------------------------- Total 352 kB/s | 38 MB 01:52 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Updating : libgcc-4.4.7-23.el6.i686 1/17 Updating : tzdata-2018e-3.el6.noarch 2/17 Installing : kernel-headers-2.6.32-754.3.5.el6.i686 3/17 Updating : glibc-common-2.12-1.212.el6.i686 4/17 Updating : glibc-2.12-1.212.el6.i686 5/17 Installing : glibc-headers-2.12-1.212.el6.i686 6/17 Installing : libgomp-4.4.7-23.el6.i686 7/17 Installing : mpfr-2.4.1-6.el6.i686 8/17 Installing : cpp-4.4.7-23.el6.i686 9/17 Installing : ppl-0.10.2-11.el6.i686 10/17 Installing : glibc-devel-2.12-1.212.el6.i686 11/17 Installing : cloog-ppl-0.15.7-1.2.el6.i686 12/17 Installing : gcc-4.4.7-23.el6.i686 13/17 Cleanup : glibc-common-2.12-1.7.el6.i686 14/17 Cleanup : glibc-2.12-1.7.el6.i686 15/17 Cleanup : tzdata-2010l-1.el6.noarch 16/17 Cleanup : libgcc-4.4.4-13.el6.i686 17/17 Installed: gcc.i686 0:4.4.7-23.el6 Dependency Installed: cloog-ppl.i686 0:0.15.7-1.2.el6 cpp.i686 0:4.4.7-23.el6 glibc-devel.i686 0:2.12-1.212.el6 glibc-headers.i686 0:2.12-1.212.el6 kernel-headers.i686 0:2.6.32-754.3.5.el6 libgomp.i686 0:4.4.7-23.el6 mpfr.i686 0:2.4.1-6.el6 ppl.i686 0:0.10.2-11.el6 Dependency Updated: glibc.i686 0:2.12-1.212.el6 glibc-common.i686 0:2.12-1.212.el6 libgcc.i686 0:4.4.7-23.el6 tzdata.noarch 0:2018e-3.el6 Complete! You have new mail in /var/spool/mail/root [root@CactiEZ /]# ^C
再次使用 ./configure 確保系統擁有合適的編譯器可以編譯源代碼。及具有正確的庫依賴關係。ui
[root@CactiEZ htop-1.0.2]# ./configure checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking whether gcc and cc understand -c and -o together... yes checking how to print strings... printf checking for a sed that does not truncate output... /bin/sed checking for fgrep... /bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1966080 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for ar... ar checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... no checking whether to build static libraries... yes checking for ceil in -lm... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for strings.h... (cached) yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking for unistd.h... (cached) yes checking curses.h usability... no checking curses.h presence... no checking for curses.h... no checking execinfo.h usability... yes checking execinfo.h presence... yes checking for execinfo.h... yes checking for stdbool.h that conforms to C99... yes checking for _Bool... yes checking for an ANSI C-conforming const... yes checking for pid_t... yes checking for uid_t in sys/types.h... yes checking whether closedir returns void... no checking return type of signal handlers... void checking whether lstat correctly handles trailing slash... yes checking whether stat accepts an empty string... no checking for memmove... yes checking for strncasecmp... yes checking for strstr... yes checking for strdup... yes checking whether gcc -std=c99 option works... yes checking for refresh in -lncursesw... no configure: error: You may want to use --disable-unicode or install libncursesw.
最後一段出現錯誤:
configure: error: You may want to use --disable-unicode or install libncursesw.
須要安裝 ncurses-devel
yum install ncurses-devel
[root@CactiEZ htop-1.0.2]# yum install ncurses-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.tuna.tsinghua.edu.cn
* updates: mirrors.tuna.tsinghua.edu.cn
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ncurses-devel.i686 0:5.7-4.20090207.el6 set to be updated
--> Processing Dependency: ncurses-libs = 5.7-4.20090207.el6 for package: ncurses-devel-5.7-4.20090207.el6.i686
--> Processing Dependency: pkgconfig for package: ncurses-devel-5.7-4.20090207.el6.i686
--> Processing Dependency: /usr/bin/pkg-config for package: ncurses-devel-5.7-4.20090207.el6.i686
--> Running transaction check
---> Package ncurses-libs.i686 0:5.7-4.20090207.el6 set to be updated
--> Processing Dependency: ncurses-base = 5.7-4.20090207.el6 for package: ncurses-libs-5.7-4.20090207.el6.i686
---> Package pkgconfig.i686 1:0.23-9.1.el6 set to be updated
--> Running transaction check
---> Package ncurses-base.i686 0:5.7-4.20090207.el6 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================================
Package Arch Version Repository Size
========================================================================================================================================
Installing:
ncurses-devel i686 5.7-4.20090207.el6 base 641 k
Installing for dependencies:
pkgconfig i686 1:0.23-9.1.el6 base 67 k
Updating for dependencies:
ncurses-base i686 5.7-4.20090207.el6 base 61 k
ncurses-libs i686 5.7-4.20090207.el6 base 249 k
Transaction Summary
========================================================================================================================================
Install 2 Package(s)
Upgrade 2 Package(s)
Total download size: 1.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/4): ncurses-base-5.7-4.20090207.el6.i686.rpm | 61 kB 00:00
(2/4): ncurses-devel-5.7-4.20090207.el6.i686.rpm | 641 kB 00:01
(3/4): ncurses-libs-5.7-4.20090207.el6.i686.rpm | 249 kB 00:00
(4/4): pkgconfig-0.23-9.1.el6.i686.rpm | 67 kB 00:00
----------------------------------------------------------------------------------------------------------------------------------------
Total 320 kB/s | 1.0 MB 00:03
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : ncurses-base-5.7-4.20090207.el6.i686 1/6
Updating : ncurses-libs-5.7-4.20090207.el6.i686 2/6
Installing : 1:pkgconfig-0.23-9.1.el6.i686 3/6
Installing : ncurses-devel-5.7-4.20090207.el6.i686 4/6
Cleanup : ncurses-libs-5.7-3.20090208.el6.i686 5/6
Cleanup : ncurses-base-5.7-3.20090208.el6.i686 6/6
Installed:
ncurses-devel.i686 0:5.7-4.20090207.el6
Dependency Installed:
pkgconfig.i686 1:0.23-9.1.el6
Dependency Updated:
ncurses-base.i686 0:5.7-4.20090207.el6 ncurses-libs.i686 0:5.7-4.20090207.el6
Complete!
[root@CactiEZ htop-1.0.2]#
從新執行./configure
而後,make構建各類二進制文件
[root@CactiEZ htop-1.0.2]# make make all-am make[1]: Entering directory `/htop-1.0.2' gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-AvailableMetersPanel.o -MD -MP -MF .deps/htop-AvailableMetersPanel.Tpo -c -o htop-AvailableMetersPanel.o `test -f 'AvailableMetersPanel.c' || echo './'`AvailableMetersPanel.c mv -f .deps/htop-AvailableMetersPanel.Tpo .deps/htop-AvailableMetersPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-CategoriesPanel.o -MD -MP -MF .deps/htop-CategoriesPanel.Tpo -c -o htop-CategoriesPanel.o `test -f 'CategoriesPanel.c' || echo './'`CategoriesPanel.c mv -f .deps/htop-CategoriesPanel.Tpo .deps/htop-CategoriesPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-CheckItem.o -MD -MP -MF .deps/htop-CheckItem.Tpo -c -o htop-CheckItem.o `test -f 'CheckItem.c' || echo './'`CheckItem.c mv -f .deps/htop-CheckItem.Tpo .deps/htop-CheckItem.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-ClockMeter.o -MD -MP -MF .deps/htop-ClockMeter.Tpo -c -o htop-ClockMeter.o `test -f 'ClockMeter.c' || echo './'`ClockMeter.c mv -f .deps/htop-ClockMeter.Tpo .deps/htop-ClockMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-ColorsPanel.o -MD -MP -MF .deps/htop-ColorsPanel.Tpo -c -o htop-ColorsPanel.o `test -f 'ColorsPanel.c' || echo './'`ColorsPanel.c mv -f .deps/htop-ColorsPanel.Tpo .deps/htop-ColorsPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-ColumnsPanel.o -MD -MP -MF .deps/htop-ColumnsPanel.Tpo -c -o htop-ColumnsPanel.o `test -f 'ColumnsPanel.c' || echo './'`ColumnsPanel.c mv -f .deps/htop-ColumnsPanel.Tpo .deps/htop-ColumnsPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-CPUMeter.o -MD -MP -MF .deps/htop-CPUMeter.Tpo -c -o htop-CPUMeter.o `test -f 'CPUMeter.c' || echo './'`CPUMeter.c mv -f .deps/htop-CPUMeter.Tpo .deps/htop-CPUMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-CRT.o -MD -MP -MF .deps/htop-CRT.Tpo -c -o htop-CRT.o `test -f 'CRT.c' || echo './'`CRT.c mv -f .deps/htop-CRT.Tpo .deps/htop-CRT.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-DisplayOptionsPanel.o -MD -MP -MF .deps/htop-DisplayOptionsPanel.Tpo -c -o htop-DisplayOptionsPanel.o `test -f 'DisplayOptionsPanel.c' || echo './'`DisplayOptionsPanel.c mv -f .deps/htop-DisplayOptionsPanel.Tpo .deps/htop-DisplayOptionsPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-FunctionBar.o -MD -MP -MF .deps/htop-FunctionBar.Tpo -c -o htop-FunctionBar.o `test -f 'FunctionBar.c' || echo './'`FunctionBar.c mv -f .deps/htop-FunctionBar.Tpo .deps/htop-FunctionBar.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Hashtable.o -MD -MP -MF .deps/htop-Hashtable.Tpo -c -o htop-Hashtable.o `test -f 'Hashtable.c' || echo './'`Hashtable.c mv -f .deps/htop-Hashtable.Tpo .deps/htop-Hashtable.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Header.o -MD -MP -MF .deps/htop-Header.Tpo -c -o htop-Header.o `test -f 'Header.c' || echo './'`Header.c mv -f .deps/htop-Header.Tpo .deps/htop-Header.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-htop.o -MD -MP -MF .deps/htop-htop.Tpo -c -o htop-htop.o `test -f 'htop.c' || echo './'`htop.c mv -f .deps/htop-htop.Tpo .deps/htop-htop.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-ListItem.o -MD -MP -MF .deps/htop-ListItem.Tpo -c -o htop-ListItem.o `test -f 'ListItem.c' || echo './'`ListItem.c mv -f .deps/htop-ListItem.Tpo .deps/htop-ListItem.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-LoadAverageMeter.o -MD -MP -MF .deps/htop-LoadAverageMeter.Tpo -c -o htop-LoadAverageMeter.o `test -f 'LoadAverageMeter.c' || echo './'`LoadAverageMeter.c mv -f .deps/htop-LoadAverageMeter.Tpo .deps/htop-LoadAverageMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-MemoryMeter.o -MD -MP -MF .deps/htop-MemoryMeter.Tpo -c -o htop-MemoryMeter.o `test -f 'MemoryMeter.c' || echo './'`MemoryMeter.c mv -f .deps/htop-MemoryMeter.Tpo .deps/htop-MemoryMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Meter.o -MD -MP -MF .deps/htop-Meter.Tpo -c -o htop-Meter.o `test -f 'Meter.c' || echo './'`Meter.c mv -f .deps/htop-Meter.Tpo .deps/htop-Meter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-MetersPanel.o -MD -MP -MF .deps/htop-MetersPanel.Tpo -c -o htop-MetersPanel.o `test -f 'MetersPanel.c' || echo './'`MetersPanel.c mv -f .deps/htop-MetersPanel.Tpo .deps/htop-MetersPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Object.o -MD -MP -MF .deps/htop-Object.Tpo -c -o htop-Object.o `test -f 'Object.c' || echo './'`Object.c mv -f .deps/htop-Object.Tpo .deps/htop-Object.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Panel.o -MD -MP -MF .deps/htop-Panel.Tpo -c -o htop-Panel.o `test -f 'Panel.c' || echo './'`Panel.c mv -f .deps/htop-Panel.Tpo .deps/htop-Panel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-BatteryMeter.o -MD -MP -MF .deps/htop-BatteryMeter.Tpo -c -o htop-BatteryMeter.o `test -f 'BatteryMeter.c' || echo './'`BatteryMeter.c mv -f .deps/htop-BatteryMeter.Tpo .deps/htop-BatteryMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Process.o -MD -MP -MF .deps/htop-Process.Tpo -c -o htop-Process.o `test -f 'Process.c' || echo './'`Process.c mv -f .deps/htop-Process.Tpo .deps/htop-Process.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-ProcessList.o -MD -MP -MF .deps/htop-ProcessList.Tpo -c -o htop-ProcessList.o `test -f 'ProcessList.c' || echo './'`ProcessList.c mv -f .deps/htop-ProcessList.Tpo .deps/htop-ProcessList.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-RichString.o -MD -MP -MF .deps/htop-RichString.Tpo -c -o htop-RichString.o `test -f 'RichString.c' || echo './'`RichString.c mv -f .deps/htop-RichString.Tpo .deps/htop-RichString.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-ScreenManager.o -MD -MP -MF .deps/htop-ScreenManager.Tpo -c -o htop-ScreenManager.o `test -f 'ScreenManager.c' || echo './'`ScreenManager.c mv -f .deps/htop-ScreenManager.Tpo .deps/htop-ScreenManager.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Settings.o -MD -MP -MF .deps/htop-Settings.Tpo -c -o htop-Settings.o `test -f 'Settings.c' || echo './'`Settings.c mv -f .deps/htop-Settings.Tpo .deps/htop-Settings.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-IOPriorityPanel.o -MD -MP -MF .deps/htop-IOPriorityPanel.Tpo -c -o htop-IOPriorityPanel.o `test -f 'IOPriorityPanel.c' || echo './'`IOPriorityPanel.c mv -f .deps/htop-IOPriorityPanel.Tpo .deps/htop-IOPriorityPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-SignalsPanel.o -MD -MP -MF .deps/htop-SignalsPanel.Tpo -c -o htop-SignalsPanel.o `test -f 'SignalsPanel.c' || echo './'`SignalsPanel.c mv -f .deps/htop-SignalsPanel.Tpo .deps/htop-SignalsPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-String.o -MD -MP -MF .deps/htop-String.Tpo -c -o htop-String.o `test -f 'String.c' || echo './'`String.c mv -f .deps/htop-String.Tpo .deps/htop-String.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-SwapMeter.o -MD -MP -MF .deps/htop-SwapMeter.Tpo -c -o htop-SwapMeter.o `test -f 'SwapMeter.c' || echo './'`SwapMeter.c mv -f .deps/htop-SwapMeter.Tpo .deps/htop-SwapMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-TasksMeter.o -MD -MP -MF .deps/htop-TasksMeter.Tpo -c -o htop-TasksMeter.o `test -f 'TasksMeter.c' || echo './'`TasksMeter.c mv -f .deps/htop-TasksMeter.Tpo .deps/htop-TasksMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-TraceScreen.o -MD -MP -MF .deps/htop-TraceScreen.Tpo -c -o htop-TraceScreen.o `test -f 'TraceScreen.c' || echo './'`TraceScreen.c mv -f .deps/htop-TraceScreen.Tpo .deps/htop-TraceScreen.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-UptimeMeter.o -MD -MP -MF .deps/htop-UptimeMeter.Tpo -c -o htop-UptimeMeter.o `test -f 'UptimeMeter.c' || echo './'`UptimeMeter.c mv -f .deps/htop-UptimeMeter.Tpo .deps/htop-UptimeMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-UsersTable.o -MD -MP -MF .deps/htop-UsersTable.Tpo -c -o htop-UsersTable.o `test -f 'UsersTable.c' || echo './'`UsersTable.c mv -f .deps/htop-UsersTable.Tpo .deps/htop-UsersTable.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Vector.o -MD -MP -MF .deps/htop-Vector.Tpo -c -o htop-Vector.o `test -f 'Vector.c' || echo './'`Vector.c mv -f .deps/htop-Vector.Tpo .deps/htop-Vector.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-AvailableColumnsPanel.o -MD -MP -MF .deps/htop-AvailableColumnsPanel.Tpo -c -o htop-AvailableColumnsPanel.o `test -f 'AvailableColumnsPanel.c' || echo './'`AvailableColumnsPanel.c mv -f .deps/htop-AvailableColumnsPanel.Tpo .deps/htop-AvailableColumnsPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-AffinityPanel.o -MD -MP -MF .deps/htop-AffinityPanel.Tpo -c -o htop-AffinityPanel.o `test -f 'AffinityPanel.c' || echo './'`AffinityPanel.c mv -f .deps/htop-AffinityPanel.Tpo .deps/htop-AffinityPanel.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-HostnameMeter.o -MD -MP -MF .deps/htop-HostnameMeter.Tpo -c -o htop-HostnameMeter.o `test -f 'HostnameMeter.c' || echo './'`HostnameMeter.c mv -f .deps/htop-HostnameMeter.Tpo .deps/htop-HostnameMeter.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-OpenFilesScreen.o -MD -MP -MF .deps/htop-OpenFilesScreen.Tpo -c -o htop-OpenFilesScreen.o `test -f 'OpenFilesScreen.c' || echo './'`OpenFilesScreen.c mv -f .deps/htop-OpenFilesScreen.Tpo .deps/htop-OpenFilesScreen.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-Affinity.o -MD -MP -MF .deps/htop-Affinity.Tpo -c -o htop-Affinity.o `test -f 'Affinity.c' || echo './'`Affinity.c mv -f .deps/htop-Affinity.Tpo .deps/htop-Affinity.Po gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -MT htop-IOPriority.o -MD -MP -MF .deps/htop-IOPriority.Tpo -c -o htop-IOPriority.o `test -f 'IOPriority.c' || echo './'`IOPriority.c mv -f .deps/htop-IOPriority.Tpo .deps/htop-IOPriority.Po /bin/sh ./libtool --tag=CC --mode=link gcc -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -o htop htop-AvailableMetersPanel.o htop-CategoriesPanel.o htop-CheckItem.o htop-ClockMeter.o htop-ColorsPanel.o htop-ColumnsPanel.o htop-CPUMeter.o htop-CRT.o htop-DisplayOptionsPanel.o htop-FunctionBar.o htop-Hashtable.o htop-Header.o htop-htop.o htop-ListItem.o htop-LoadAverageMeter.o htop-MemoryMeter.o htop-Meter.o htop-MetersPanel.o htop-Object.o htop-Panel.o htop-BatteryMeter.o htop-Process.o htop-ProcessList.o htop-RichString.o htop-ScreenManager.o htop-Settings.o htop-IOPriorityPanel.o htop-SignalsPanel.o htop-String.o htop-SwapMeter.o htop-TasksMeter.o htop-TraceScreen.o htop-UptimeMeter.o htop-UsersTable.o htop-Vector.o htop-AvailableColumnsPanel.o htop-AffinityPanel.o htop-HostnameMeter.o htop-OpenFilesScreen.o htop-Affinity.o htop-IOPriority.o -lncursesw -lm libtool: link: gcc -pedantic -Wall -Wextra -std=c99 -rdynamic -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -g -O2 -o htop htop-AvailableMetersPanel.o htop-CategoriesPanel.o htop-CheckItem.o htop-ClockMeter.o htop-ColorsPanel.o htop-ColumnsPanel.o htop-CPUMeter.o htop-CRT.o htop-DisplayOptionsPanel.o htop-FunctionBar.o htop-Hashtable.o htop-Header.o htop-htop.o htop-ListItem.o htop-LoadAverageMeter.o htop-MemoryMeter.o htop-Meter.o htop-MetersPanel.o htop-Object.o htop-Panel.o htop-BatteryMeter.o htop-Process.o htop-ProcessList.o htop-RichString.o htop-ScreenManager.o htop-Settings.o htop-IOPriorityPanel.o htop-SignalsPanel.o htop-String.o htop-SwapMeter.o htop-TasksMeter.o htop-TraceScreen.o htop-UptimeMeter.o htop-UsersTable.o htop-Vector.o htop-AvailableColumnsPanel.o htop-AffinityPanel.o htop-HostnameMeter.o htop-OpenFilesScreen.o htop-Affinity.o htop-IOPriority.o -lncursesw -lm make[1]: Leaving directory `/htop-1.0.2' [root@CactiEZ htop-1.0.2]#
安裝完成。
鍵入htop 命令,打開htop。
左邊部分從上至下,分別爲,cpu、內存、交換分區的使用狀況,右邊部分爲:Tasks爲進程總數,當前運行的進程數、Load average爲系統1分鐘,5分鐘,10分鐘的平均負載狀況、Uptime爲系統運行的時間。
,就是進程實時情況。
下面是 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)
如下交互式命令(INTERACTIVE COMMANDS)
3.1. 顯示自帶幫助
鼠標點擊Help或者按F1 顯示自帶幫助
3.2. htop 設定
鼠標點擊Setup或者按下F2 以後進入htop 設定的頁面,Meters 頁面設定了頂端的一些信息顯示,頂端的顯示又分爲左右兩側,到底能顯示些什麼能夠在最右側那欄新增,要新增到上方左側(F5)或是右側(F6)均可以,這就是我的設定的範圍了。這裏多加了一個時鐘。
......