htop命令

htop命令
  htop是一个交互式的进程查看器。
  htop和top命令比较类似,不同的是htop允许你在竖直和水平方向上滚屏,这样你就可以看到系统中的所有进程以及其完整的信息。htop允许你不用输入进程的ID(PID)就可以结束进程或者调整其优先级。在采集数据的方面,htop相对于top命令更快。
  下面我们就将介绍如何安装htop,介绍htop中的快捷键以及各列的含义。
安装htop

  如果系统默认没有安装htop,我们可以手动通过软件仓库的方式进行安装
  Ubuntu
    apt-get install -y htop
  Fedora
    dnf install htop(或者yum install htop)
  CentOS/RedHat
    yum install htop
  也可以通过下载源码进行安装:
    1.下载htop源码:wget http://hisham.hm/htop/releases/2.2.0/htop-2.2.0.tar.gz
    2.解压源码:tar -zxf htop-2.2.0.tar.gz
    3.切换到源码目录:cd htop-2.2.0/
    4.配置:./configure
    5.编译:make
    6.安装:make install
  如果编译过程中报错,那么多半是因为缺少依赖库,使用以下命令安装依赖库后,再重新编译即可
  Ubuntu:
    apt-get install build-essential libssl-dev libncurses5
  Fedora:
    dnf install @development-tools ncurses
  CentOS/RedHat:
    yum groupinstall "Development Tools"
    yum install ncurses-devel

开始使用htop

  在终端中键入htop并回车,即可启动htop。
  
  如图所示,在最顶部,会列出所有CPU核心的使用率,接下来是内存的使用率,然后是交换分区的使用率,接着是进程列表信息,最底部是快捷键信息。
  在进程信息列表中各列的含义如下:
    PID: Process ID,进程的ID号
    USER: 进程属于的用户
    PR: Process priority,进程的优先级,值越低,优先级越高
    NI: nice,进程的nice值,它影响优先级
    VIRT: the virtual memory,进程使用的虚拟内存
    RES: 进程使用的物理内存,通常单位是KB
    SHR: shared memory,进程使用的共享内存
    S: 进程的当前状态。状态包括S(sleeping中断), R(running运行), D(for disk sleep(uninterruptible)等待磁盘,不可中断)Z(zombied僵死), T(traced or suspended跟踪或者挂起),W(分页中)
    %CPU: 进程的CPU使用率,绿色表示正常,蓝色表示低优先级,红色表示内核。
    %MEM: 进程的物理内存使用率
    TIME+: 进程已经使用的处理器时间
    COMMAND: 启动进程的命令名称

如何使用htop

  上下键:用来在竖直方向上滚动内容。
  左右键:用来在水平方向上滚动内容。
  F9或k:用来向运行中的进程送信号。先使用上下键选择要操作的进程,然后按F9或者k键,就会弹出发送信号的菜单键,可以选择希望发送的信号。例如,“15 SIGTERM”用来结束进程。
  F7和F8:F7用来减少进程的nice值,而F8用来增加进程的nice值。
  l:显示进程打开的文件。
  u:按u键,会显示用户列表,选择一个用户后,会显示指定用户的进程。也可以在启动htop的时候通过-u指定用户名,例如,显示用户fool的进程:htop -u fool。
  F6或>:默认进程按照CPU使用率进行排序,可以通过F6或>显示出列菜单,选择一个列,按回车键,即可按照指定的列进行排序。
  F5或t:用来按照父子进程的关系显示进程。可以通过+展开显示,通过-折叠显示。
  F2或s:用来打开htop的设置菜单。
  F10或Ctrl+C:用来退出htop。