跳至内容

Linux如何查看进程?像windows的任务管理器那样

发布日期:
作者:
评论数:1 评论

top 是一个用于显示 Linux 系统实时运行信息的命令行工具。它能够显示系统中各个进程的资源使用情况,包括 CPU、内存、和运行时间等信息,类似于windows的任务管理器。通过 top 命令,用户可以快速了解系统的负载状况,并对可能影响系统性能的问题进行诊断。

如何使用 top 命令?

在终端中输入 top 并按回车键即可启动 top 命令:

top

输出示例:

输出示例解释:

  • top - 15:32:45 up 1:45, 2 users, load average: 0.32, 0.18, 0.15:
    • 15:32:45 是当前时间。
    • up 1:45 表示系统已经运行了 1 小时 45 分钟。
    • 2 users 表示有 2 个用户登录到系统。
    • load average 是过去 1 分钟、5 分钟和 15 分钟的系统平均负载。
  • Tasks: 165 total, 2 running, 163 sleeping, 0 stopped, 0 zombie:
    • 165 total 表示系统当前有 165 个进程。
    • 2 running 表示有 2 个正在运行的进程。
    • 163 sleeping 表示有 163 个处于休眠状态的进程。
    • 0 stopped 表示没有停止的进程。
    • 0 zombie 表示没有僵尸进程。
  • %Cpu(s): 7.5 us, 2.1 sy, 0.0 ni, 90.1 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st:
    • 7.5 us 是用户态 CPU 使用率。
    • 2.1 sy 是系统态 CPU 使用率。
    • 90.1 id 是空闲 CPU 百分比。
    • 其他字段(如 wahisist)分别表示等待 I/O 操作、硬中断、软中断和虚拟化相关的 CPU 使用情况。
  • MiB Mem : 7982.3 total, 1962.3 free, 3217.6 used, 2802.4 buff/cache:
    • 7982.3 total 是总内存量(以 MiB 为单位)。
    • 1962.3 free 是可用内存。
    • 3217.6 used 是已使用的内存。
    • 2802.4 buff/cache 是缓冲区和缓存使用的内存。
  • MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 4276.1 avail Mem:
    • 2048.0 total 是交换区的总大小。
    • 2048.0 free 是可用交换区大小。
    • 0.0 used 是已使用的交换区。
    • 4276.1 avail Mem 是可用的内存。
  • 进程列表
    • PID:进程 ID。
    • USER:进程所属用户。
    • PRNI:优先级和优先级数值。
    • VIRT:虚拟内存使用量。
    • RES:物理内存使用量。
    • SHR:共享内存使用量。
    • S:进程状态,R 表示运行,S 表示休眠。
    • %CPU:CPU 使用率。
    • %MEM:内存使用率。
    • TIME+:进程使用的 CPU 时间。
    • COMMAND:启动进程的命令

常用快捷键

top 命令提供了一些快捷键,用于实时更改显示的内容和排序方式:

  • h?:显示帮助信息。按下此键会显示所有可用的快捷键和功能说明。
  • q:退出 top 命令。按下 q 键可以立即退出 top 界面。
  • k:终止一个进程。按下 k 后,会提示你输入要终止的进程 ID (PID),然后你可以输入 PID 并确认终止。
  • r:重新调整进程的优先级。按下 r 键后,输入进程的 PID,并设定新的优先级(通常是一个负数表示更高的优先级)。
  • z:切换颜色显示。按下 z 可以在彩色和单色显示模式之间切换,帮助用户根据喜好或环境选择显示方式。
  • P:按 CPU 使用率排序。按下 P 键将进程按 CPU 使用率从高到低排序,这是 top 的默认排序方式。
  • M:按内存使用量排序。按下 M 键将进程按内存使用量从高到低排序。
  • m:切换显示内存信息。按下 m 键会按照进度条形式显示内存占用。
  • T:按运行时间排序。按下 T 键将进程按运行时间(累计 CPU 时间)排序。
  • t:切换显示CPU状态信息。按下 t 键会按照进度条形式显示CPU占用情况。
  • n:设置显示的进程数量。按下 n 后,你可以输入要显示的进程数目,从而控制 top 界面上显示的进程数量。
  • c:切换显示完整命令行。按下 c 键可以在只显示命令名和显示完整命令行之间切换。
  • u:按用户筛选进程。按下 u 键后,输入用户名,将只显示该用户的进程。按 u 回到top界面
  • o:自定义筛选进程。按下 o 键后,例如输入COMMAND=chrome,就会只看chrome的进程。按 = 回到top界面。
  • s:调整刷新间隔时间。按下 s 键后,输入新的刷新时间(秒),默认是 3 秒。
  • l:切换显示系统负载平均值。按下 l 键可以在显示和隐藏顶部的系统负载平均值和启动时间之间切换。
  • i:切换空闲进程显示。按下 i 键可以隐藏或显示空闲的进程,方便聚焦在活动进程上。
  • 1:切换每个 CPU 核心的使用情况显示。按下 1 键可以在显示单个 CPU 的总使用情况和每个 CPU 核心的独立使用情况之间切换。
  • E:切换顶部内存显示单位。按下 E 键可更换顶部内存的显示单位。
  • e:切换进程内存显示单位。按下 e 键可更换进程内存的显示单位。

高级使用技巧

  • 指定刷新时间间隔:默认情况下,top 每隔 3 秒刷新一次。可以使用 -d 选项来更改此间隔。例如,使用 top -d 5 将刷新间隔设置为 5 秒。
  • 输出重定向:使用 -b 选项可以将 top 的输出重定向到文件中,方便日后分析。例如:
  top -b -n 1 > top_output.txt

-n 1:表示 top 只运行一次,然后退出。这意味着它会采集一次系统状态数据并将其输出到指定文件(在此示例中为 top_output.txt)。

选项解释:

  • -b:以批处理模式(batch mode)运行 top。这种模式通常用于将 top 的输出重定向到文件或进行其他非交互式处理。在批处理模式下,top 不会以交互方式显示,而是直接输出信息并退出。
  • -n:指定 top 运行的刷新次数。-n 1 意味着只刷新一次后退出。如果你将这个值设为更大,比如 -n 5,那么 top 将刷新 5 次后才会退出。top -b -n 5 > top_output.txt:将 top 的输出结果刷新 5 次,并将所有的结果重定向到 top_output.txt 文件中。

结论

top 命令是 Linux 用户监控系统性能和管理进程的强大工具。熟练使用 top 可以帮助用户迅速识别和解决系统性能问题,提高工作效率。

希望这篇文章能帮助你更好地理解和使用 top 命令。如果有任何问题或建议,欢迎在评论区留言!

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注