{"msg":"操作成功","code":200,"data":{"createBy":"admin","createTime":"2024-10-27 09:21:58","updateBy":"admin","updateTime":"2024-10-27 09:21:58","remark":null,"id":91,"articleTitle":"每天一个Linux命令（十五）top","articleUrl":"linux_top","articleThumbnail":"https://www.asumimoe.com/imgfiles/20250301/b95d839fa195428cb42fc7f104f50b0d.png","articleFlag":"0","draftStatus":"1","reprintStatement":"0","articleSummary":"top是 Linux/Unix 系统中用于实时监控系统状态的命令，支持查看 CPU、内存、进程等资源的使用情况。它是系统性能分析和故障排查中常用的工具之一。","articleContent":"`top` 是 Linux/Unix 系统中用于**实时监控系统状态**的命令，支持查看 CPU、内存、进程等资源的使用情况。它是系统性能分析和故障排查中常用的工具之一。\n\n---\n\n## 语法\n\n```bash\ntop [选项]\n```\n\n---\n\n## 常用选项\n\n| 选项 | 说明                     |\n| ---- | ------------------------ |\n| `-d` | 设置刷新间隔（秒）       |\n| `-n` | 设置刷新次数后退出       |\n| `-p` | 监控指定 PID 的进程      |\n| `-u` | 监控指定用户的进程       |\n| `-b` | 批处理模式（输出到文件） |\n| `-H` | 显示线程信息             |\n| `-c` | 显示完整命令路径         |\n\n---\n\n## 输出字段说明\n\n| 字段      | 说明                          |\n| --------- | ----------------------------- |\n| `PID`     | 进程 ID                       |\n| `USER`    | 进程所有者                    |\n| `PR`      | 进程优先级                    |\n| `NI`      | 进程的 nice 值                |\n| `VIRT`    | 虚拟内存使用量                |\n| `RES`     | 物理内存使用量                |\n| `SHR`     | 共享内存使用量                |\n| `S`       | 进程状态（如 R=运行, S=睡眠） |\n| `%CPU`    | CPU 使用率                    |\n| `%MEM`    | 内存使用率                    |\n| `TIME+`   | 进程使用的 CPU 时间总计       |\n| `COMMAND` | 进程的命令名                  |\n\n---\n\n## 使用示例\n\n### 1. 启动 top\n\n```bash\ntop\n```\n\n输出示例：\n\n```bash\ntop - 22:18:05 up 3 days,  5:45,  2 users,  load average: 0.15, 0.10, 0.05\nTasks: 123 total,   1 running, 122 sleeping,   0 stopped,   0 zombie\n%Cpu(s):  5.6 us,  2.3 sy,  0.0 ni, 91.9 id,  0.0 wa,  0.0 hi,  0.2 si,  0.0 st\nMiB Mem :  16000.0 total,   2000.0 free,   4000.0 used,  10000.0 buff/cache\nMiB Swap:   2048.0 total,   2048.0 free,      0.0 used.  11000.0 avail Mem\n\n  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND\n    1 root      20   0  169728   9800   6800 S   0.0   0.1   0:01.23 systemd\n    2 root      20   0       0      0      0 S   0.0   0.0   0:00.00 kthreadd\n    3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_gp\n```\n\n- **第一行：**\n  - `22:18:05`: 当前时间。\n  - `up 3 days, 5:45`: 系统已经运行的时间（天数和小时数）。\n  - `2 users`: 当前登录到系统的用户数量。\n  - `load average: 0.15, 0.10, 0.05`: 系统在过去1分钟、5分钟和15分钟的平均负载。负载值越高表示系统越繁忙。\n- **第二行：**\n  - `Tasks: 123 total`: 总共的进程数。\n  - `1 running`: 正在运行的进程数。\n  - `122 sleeping`: 处于睡眠状态的进程数。\n  - `0 stopped`: 已停止的进程数。\n  - `0 zombie`: 僵尸进程数（应该尽量避免出现僵尸进程）。\n- **第三行：**\n  - `%Cpu(s): 5.6 us`: 用户空间占用CPU百分比。\n  - `2.3 sy`: 内核空间占用CPU百分比。\n  - `0.0 ni`: 改变过优先级的进程占用CPU百分比。\n  - `91.9 id`: 空闲CPU百分比。\n  - `0.0 wa`: I/O等待占用CPU百分比。\n  - `0.0 hi`: 硬中断占用CPU百分比。\n  - `0.2 si`: 软中断占用CPU百分比。\n  - `0.0 st`: 虚拟机偷取CPU时间百分比（仅适用于虚拟化环境）。\n- **第四行：**\n  - `MiB Mem : 16000.0 total`: 物理内存总量（以MB为单位）。\n  - `2000.0 free`: 空闲的物理内存。\n  - `4000.0 used`: 已使用的物理内存。\n  - `10000.0 buff/cache`: 用作缓存和缓冲区的内存。\n- **第五行：**\n  - `MiB Swap: 2048.0 total`: 交换分区总大小（以MB为单位）。\n  - `2048.0 free`: 空闲的交换分区大小。\n  - `0.0 used`: 已使用的交换分区大小。\n  - `11000.0 avail Mem`: 可用的内存（考虑了缓存和缓冲区）。\n\n---\n\n### 2. 设置刷新间隔\n\n```bash\ntop -d 2\n```\n\n说明：每 2 秒刷新一次\n\n---\n\n### 3. 监控指定进程\n\n```bash\ntop -p 1234\n```\n\n说明：仅监控 PID 为 1234 的进程\n\n---\n\n### 4. 监控指定用户的进程\n\n```bash\ntop -u username\n```\n\n说明：仅监控 `username` 用户的进程\n\n---\n\n### 5. 显示线程信息\n\n```bash\ntop -H\n```\n\n说明：显示线程而非进程的信息\n\n---\n\n### 6. 显示完整命令路径\n\n```bash\ntop -c\n```\n\n说明：显示完整的命令路径而非仅命令名\n\n---\n\n### 7. 批处理模式\n\n```bash\ntop -b -n 1 > top_output.txt\n```\n\n说明：将 top 输出保存到文件 `top_output.txt`\n\n---\n\n## 注意事项\n\n1. **实时刷新**：`top` 默认实时刷新，按 `q` 退出\n2. **排序功能**：按 `P`（CPU）、`M`（内存）、`T`（时间）等键可排序\n3. **交互命令**：在 `top` 运行时，可按 `k` 终止进程，按 `r` 调整优先级\n\n---\n\n## 进阶技巧\n\n### 1. 按内存使用排序\n\n启动 `top` 后按 `M` 键\n\n---\n\n### 2. 按 CPU 使用排序\n\n启动 `top` 后按 `P` 键\n\n---\n\n### 3. 终止进程\n\n启动 `top` 后按 `k` 键，输入 PID 和信号（默认 15）\n\n---\n\n### 4. 调整进程优先级\n\n启动 `top` 后按 `r` 键，输入 PID 和 nice 值\n\n---\n\n### 5. 显示帮助信息\n\n启动 `top` 后按 `h` 键\n\n---\n\n### 6. 显示颜色\n\n启动 `top` 后按 `z` 键\n\n---\n\n### 7. 保存配置\n\n启动 `top` 后按 `W` 键，将当前配置保存到 `~/.toprc`","categoryId":1,"viewCount":70,"categoryName":"Linux","author":"球接子","authorAvatar":null,"tagIds":[10],"tagNames":["Linux基础"]}}