top命令手册

概要

top -hv|-bcHIOSs -d secs -n max -u|U user -p pid -o fld -w [cols]

‘-’符号以及空格是可选的。

描述

Top程序提供了运行系统的实时动态视图,它可以显示系统摘要信息以及当前由Linux内核管理的进程和线程列表,所显示的摘要信息的类型、顺序和大小都是可配置的,并且可以设置为持久化,在系统重启后仍然有效。

这提供了一种有限的交互界面方便对于进程进行监控。

目录

文档

  1. 命令行选项
  2. 概要展示
    • 运行时间和负载平均值
    • 任务和CPU状态
    • 内存使用情况
  1. 字段展示
    • 字段描述
    • 字段管理
  1. 交互式命令
    • 全局命令
    • 摘要区域命令
    • 任务区域命令
      • 外观
      • 内容
      • 大小
      • 排序
      • 颜色映射
  1. 轮流展示
    • 窗口概要
    • 命令窗口
    • 滚动窗口
    • 在窗口中查询
    • 在窗口中过滤
  1. 文件
    • 系统配置文件
    • 个人配置文件
    • 添加检查条目
  1. 诀窍
    • 内核魔法
    • 弹窗
    • 大鸟窗口
  1. BUGS
  2. 历史Top
  3. 参考
操作

top命令结果分为三部分的内容,统计摘要部分,展示的字段区域,任务区域。

  • 查看用法

$ top [-]h

$ top [-]v

$ top [-]?

  • 退出

$ q

$ ^C

  • 暂停

$ ^Z

  • 恢复

$ fg

  • 窗口操作

Key   key-combinations

Up      alt + \ | alt + k

Down    alt + / | alt + j

Left    alt + < | alt + h

Right   alt + > | alt + l

PgUp    alt + Up | ctrl + alt + k

PgDn    alt + Down | ctrl + alt + j

Home    alt + Left | ctrl + alt + h

End     alt + Right | ctrl + alt + l

  • 可选项
    • -h|-v查看版本以及用法
    • -b以批处理模式运行,这有助于将top的结果发送到其他程序或者文件,在此模式下运行,top程序将不会停止,除非使用-n限定了运行次数。
    • -c
      展示程序名和命令全路径。
    • -H指示top展示单个线程,若无此可选项,则默认只是显示进程(多个线程的总和)
    • -i不展示占用CPU 0%的进程
    • -O打印所有可用于排序的字段名,主要用于-o选项
    • -S列出每个进程使用的CPU时间。
    • -s启动安全模式
    • -d ss.t每隔多长时间更新一次数据,ss为秒,t为十分位。
    • -ntop展示的更新次数。
    • -u|U number or name
      只展示特定的用户id和用户名的进程信息,-u用于指定的有效的用户名,-U则用于指定任意的用户名。在用户名或者用户id前加上!号,则表示只展示除指定用户名之外的进程信息。
    • -pN1 -pN2指定只显示指定的进程ID的信息,最多可以使用-p20次,或者使用-p加上进程id列表,使用逗号进行分割,最多也只允许20个进程ID
    • -o +|- filedName指定filedName进行排序,+代表从高到低,-代表从低到高,使用-O可以查看哪些字段可以用于排序。
    • -w [cols]指定展示列数
  • 摘要展示
    • 进程启动时间和负载

top - 13:51:50 up 2 days, 3:54 ,7 users ,load average:2.47,1.41,0.90

字段 描述
top 程序名
13:51:50 up 2 days 当前时间以及自从上次启动到现在的时间长度
7 users 用户数量
load average 最近1分钟,5分钟,15分钟的系统负载
    • 任务和CPU状态

Tasks:248 total,3 running,246 sleeping,0 stopped,1 zombie

%Cpu(s): 9.8 us, 8.6 sy, 0.0 ni, 81.9 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st

字段 描述
Tasks Tasks区域
248 total 248个任务或者线程,使用-H则代表的是线程
3 running 3个运行中
246 sleeping 246个休眠中
0 stopped 0个停止状态
1 zombie 1个僵尸进程
%Cpu(s) CPU区域
9.8 us 用户空间占用CPU百分比
8.6 sy 系统空间占用CPU百分比
0.0 ni 用户进程空间内改变过优先级的进程占用的CPU百分比
81.9 id 空闲的CPU百分比
0.0 wa 等待输入输出的CPU百分比
0.0 hi 硬件中断
0.2 si 软件中断
0.0 st 实时
    • 以上CPU使用率加起来为100%,实际上是占用整个CPU的平均值,使用top命令以后按1可以看到不同的CPU核的占用情况。
    • 内存使用情况

KiB Mem:2914888 total,76692 free,2560520 used,277676 buff/cache

KiB Swap: 4194300 total,3216648 free,977652 used,98468 avail Mem

字段 描述
KiB Mem 物理内存
2914888 total 物理内存总量
76692 free 空闲的物理内存总量
2560520 used 已使用物理内存总量
277676 buff/cache 用作内核缓存的内存总量
KiB Swap 虚拟内存
4194300 total 虚拟内存总量
3216648 free 空闲的虚拟内存
977652 used 已使用的虚拟内存
98468 avail Mem 缓冲的交换区总量
  • 字段和列
    • 字段描述
      • %CPU 上次更新到现在的CPU时间占用百分比
      • %MEM 进程使用的物理内存百分比
      • CGROUPS
      • CODE 可执行代码占用的物理内存大小,单位KB
      • COMMAND 命令名
      • DATA 可执行代码意外的部分(数据段+栈)占用的物理内存大小,单位KB
      • ENVIRON
      • Flags 任务标志
      • GID
      • GROUP 进程所有者的组名
      • NI nice值,负值表示高优先级,正值表示低优先级
      • P 最后使用的CPU,仅在多CPU环境下有意义
      • PGRP
      • PID 进程ID
      • PPID 父进程ID
      • PR 优先级
      • RES 进程使用的,未被换出的物理内存的大小,单位KB
      • RUID
      • RUSER Real User Name
      • S 进程状态
        • D 不可中断的睡眠状态
        • R 运行
        • S 睡眠
        • T 跟踪/停止
        • Z 僵尸进程
      • SHR 共享内存大小,单位KB
      • SID
      • SUID
      • SUPGIDS
      • SUPGRPS
      • SUSER
      • SWAP 进程使用的虚拟内存中,被换出的大小,单位KB
      • TGID
      • TIME 进程使用的CPU时间总计,单位为秒
      • TIME+ 进程使用的CPU时间总计,单位为1/100秒
      • TPGID
      • TTY 启动进程的终端名,不是从终端启动的进程则显示为?
      • UID 进程所有这的用户ID
      • USED
      • USER
      • VIRT 进程使用的虚拟内存总量,单位KB,VIRT=SWAP+RES
      • WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
      • nDRT 最后一次写入到现在,被修改过的页面数
      • nMaj
      • nMin
      • nTH 跟某个进程关联的所有线程,配合-p选项可以知道一个进程下有多少个线程。
      • nsIPC
      • nsMNT
      • nsNET
      • nsPID
      • nsUSER
      • nsUTS
      • vMj
      • vMn
    • 管理字段执行top命令之后按f按键可以进入字段配置,选中某个字段按‘d’按键即可选中,按q退出可以发现展示页面多出了所选择的字段。
上一篇:DOM中的动态NodeList与静态NodeList


下一篇:Linux进程状态总结