Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

top 命令使用详解

top 是 Linux 系统中用于实时监控系统资源使用情况和进程状态的强大工具。以下是对其使用方法的详细解析:


一、基本用法

直接输入 top 即可启动,界面分为两部分:

  • 上半部分:系统概况(CPU、内存、交换分区、运行时间等)。
  • 下半部分:进程列表(默认按 CPU 使用率排序)。

二、关键界面信息解读

1. 系统概况区

  • 第一行

    • 当前时间、系统运行时间(up ...)、登录用户数(users)。
    • 负载平均值(load average):1分钟、5分钟、15分钟的平均负载(超过 CPU 核数表示高负载)。
  • 第二行(Tasks)

    • 总进程数、运行中(running)、休眠(sleeping)、停止(stopped)、僵尸进程(zombie)。
  • 第三行(CPU)

    • us(用户空间占用)、sy(内核空间占用)、ni(优先级进程占用)、id(空闲)、wa(I/O等待)、hi(硬件中断)、si(软件中断)、st(虚拟机占用)。
  • 第四行(内存)

    • total(总量)、free(空闲)、used(已用)、buff/cache(缓存)。
  • 第五行(交换分区)

    • 类似内存信息,交换分区使用情况。

2. 进程列表区

  • PID:进程 ID。
  • USER:进程所有者。
  • PR(优先级)、NI(Nice 值)。
  • VIRT:虚拟内存总量(KB)。
  • RES:实际物理内存使用量(KB)。
  • SHR:共享内存大小(KB)。
  • %CPU:CPU 使用率(**单核满负载为 100%**)。
  • %MEM:内存使用率。
  • TIME+:累计 CPU 时间。
  • COMMAND:启动命令。

三、常用交互式命令

1. 排序

  • P(默认):按 CPU 使用率排序。
  • M:按内存使用率排序。
  • T:按运行时间排序。
  • N:按 PID 排序。
  • R:反向排序(配合排序键使用)。

2. 显示控制

  • k:终止进程(需输入 PID)。
  • f:自定义显示列(按空格选择/取消)。
  • z:切换颜色主题。
  • c:显示完整命令路径。
  • 1:展开 CPU 核心的详细使用情况。
  • h:查看帮助。

3. 刷新与退出

  • s:修改刷新间隔(秒)。
  • q:退出 top。

四、启动参数(命令行选项)

基础参数

  • -d <秒>:设置刷新间隔(如 top -d 5)。
  • -p <PID>:仅监控指定进程(如 top -p 1234)。
  • -u <用户>:仅显示指定用户的进程(如 top -u root)。
  • -b:批处理模式(输出到文件,如 top -b -n 3 > top.log)。
  • -n <次数>:指定刷新次数后退出(配合 -b 使用)。

高级参数

  • -H:显示线程(需在界面中按 H 切换)。
  • -i:忽略空闲进程。

五、实战示例

1. 监控指定用户的进程

1
top -u apache

2. 记录系统状态到文件

1
top -b -n 5 > system_status.log

3. 仅监控 CPU 密集型进程

启动 top 后按 P,观察 %CPU 列。


六、启动参数(命令行选项)

  • 僵尸进程:若发现大量 zombie 进程,需检查父进程是否正常回收资源。
  • 高负载处理:负载持续过高时,结合 vmstatiostat 分析 I/OCPU 瓶颈。
  • 内存泄漏RES 持续增长的进程可能存在内存泄漏。

七、替代工具推荐

  • htop:交互更友好,支持鼠标操作(需安装)。
  • glances:综合监控工具,支持多服务器。

评论