如何使用 Linux top 命令

在本教程中,我们将学习如何使用 Linux top 命令。 管理系统资源对于 Linux 系统至关重要 admin. 您需要控制处理器任务才能以最佳方式使用您的硬件。 Linux top 命令显示系统上正在运行的进程。 它还可以帮助您监控系统资源的使用情况。 本教程旨在帮助您理解该命令并有效地使用它。

了解 Linux 中的 top 命令

虽然 Linux top 命令有许多变体,但本教程使用最常见的一个——在“procps-ng”包中找到。 要检查您是否使用相同的版本,请输入以下命令。

top -v 

预期输出:

procps-ng 3.3.12 Usage:   top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols] 

了解Linux top命令的界面

现在键入您的命令行以启动顶部界面。

top 

这是默认的预期输出:

顶部命令输出默认值

上半部分向我们展示了您系统资源的当前使用统计信息。 在它下面,我们看到正在运行的进程列表。 你可以 使用向上/向下箭头键导航界面 并按下 q 退出.

Linux 顶级命令摘要 – 上层区域

顶级命令摘要区域

第一行显示系统时间、正常运行时间和活跃用户数。 在这些之后,您将获得平均负载。 这具有三个值: 系统上的平均“负载”分别超过一分钟、五分钟和 15 分钟。

第二行称为任务部分。 它显示了任务总数以及处于不同“状态”的任务数。 任何进程都可以有以下状态:

顶级命令摘要区域任务顶级命令摘要区域任务
  • 可运行(R): 正在执行/准备执行的进程
  • 睡眠可中断 (S): 等待事件完成的进程
  • 睡眠不间断 (D): 等待 I/O 操作的进程
  • 停止(T): 进程已停止
  • 僵尸(Z): 进程已终止,数据结构保留
顶级命令摘要 Cpu 区域顶级命令摘要 Cpu 区域

第三行向我们展示了 CPU 使用率的百分比。 让我们讨论一下这里所说的值:

  • 我们 – 价值是花费在用户空间任务上的时间
  • 他的 – value 是花费在内核空间任务上的时间
  • ID – 价值是空闲的时间
  • – value 是等待 I/O 任务完成所花费的时间。

“ni”值或 nice 值用于确定任务对其他进程的友好程度。 我的意思是什么? 对其他任务更好的任务将具有较低的优先级并且将使用较少的 CPU 资源。

顶部命令摘要内存区域顶部命令摘要内存区域

最后,最后两行显示内存使用情况。 这里的“Mem”显示 RAM 信息,“Swap”显示交换空间信息。 交换空间是硬盘的一部分,用于临时写入 RAM 中的一些数据。 这在 RAM 几乎已满时使用。

“可用内存”是可用于分配进程的内存量,无需进一步交换。 磁盘缓冲区和磁盘缓存使用的总内存由“buff/cache”给出。

任务列表 – Linux 顶级命令

让我们看一下任务列表并详细探索它。 您可以看到几列显示有关每个进程的特定信息。 我们将详细介绍每一列。

最高指挥任务区域最高指挥任务区域

在这里,我们可以看到所有正在运行的进程的以下详细信息:

  • PID: 给定进程的唯一 ID
  • 用户: 启动进程的用户
  • 公关: 进程在调度中的优先级
  • 你: 过程的“好”价值
  • 虚拟: 进程使用的内存总量。
  • 回复: RAM 中进程使用的内存量
  • 人力资源部: 进程与其他进程共享的内存量
  • 小号: 进程状态(睡眠、空闲等)
  • %中央处理器: 进程的CPU使用百分比
  • %内存: 进程的 RAM 使用百分比
  • 时间+: 进程消耗的 CPU 时间总量
  • 命令: 此列显示进程的名称

导航 Linux 顶部命令界面

现在您知道所显示的数据意味着什么,让我们了解如何在顶部命令界面中导航。

排序顶部的命令输出

顶部的默认视图显示按进程 ID 排序的进程列表。 但是,您通常会使用 top 来查找使用系统资源最多的进程。 在这种情况下,您将利用这些 Linux top 命令对进程列表进行排序。

  • 按’T’ 按运行时对列表进行排序
  • 按’P’ 按 CPU 使用率对列表进行排序
  • 按’M’ 按使用的内存量对列表进行排序
  • 按’N’ 按 PID 对列表进行排序

排序列表的默认视图将按降序排列。 如果您希望按升序查看列表, 按’R’.

在 Linux top 命令中杀死一个进程

当你想使用 Linux top 命令杀死一个进程时, 时按“k” 顶部界面打开。 您将在进程列表上方收到一个提示,询问您要杀死的进程的 PID。 默认输入会杀死第一个进程。

顶级命令终止进程顶级命令终止进程

输入后,系统将提示您输入终止信号。 默认情况下,Linux top 命令将使用 SIGTERM 优雅地结束进程。 键入 SIGKILL 将强制结束该过程。 或者,您可以对 SIGKILL 使用信号编号 9,对 SIGTERM 使用信号编号 15。

显示正在运行的线程

Linux top 命令的默认视图显示正在运行的任务数以及进程列表。 当你想使用 top 查看正在运行的线程而不是任务时, 按’H’ Linux top 命令界面打开时。

您可以注意到,代替任务,您现在可以看到正在运行的线程数。 但是,进程列表不受影响。 这是因为相同的数据结构同时处理线程和进程。 这为每个线程提供了自己的 ID 和其他属性。

基于多个条件过滤进程

在处理大量进程时,需要过滤掉不想处理的进程。 要使用 Linux top 命令过滤进程, 按’O’. 这会出现一个提示,询问您要使用的过滤器类型。 过滤器表达式的一些常见示例是:

  • 用户=根: 显示 USER 属性为“root”的所有进程
  • !用户=根: 显示 USER 属性不读取“root”的所有进程
  • %MEM>2.0: 显示使用至少 2% 的 CPU 容量的所有进程

您可以添加多个重叠过滤器来缩小您的流程列表。 按“=”将从列表中删除所有应用的过滤器。

启用森林视图

了解正在运行的进程的层次结构也很重要。 当您想使用顶部查看此内容时, 按’V’ Linux top 命令界面打开时。

顶级命令森林视图顶级命令森林视图

这将为您提供林视图中的进程列表,并使您更容易确定哪些进程相互关联。

Save 您的配置

当您第一次使用 Linux top 命令时,您会根据自己的喜好进行一些更改以自定义 top。 但是,每次打开 Linux top 命令时,它都会以默认格式打开。 好吧,好的部分是您可以通过以下方式保存自定义配置 按“W” 在关闭顶部界面之前。

获取所有可用命令的列表

有如此多的命令可供您使用,初学者甚至有时甚至是长期使用 Linux 顶级命令的用户在工作时很容易忘记其中的一个。 当你发现自己陷入这样的困境时,只要 按’h’ 你会在你面前找到所有命令的列表。

结论

Linux top 命令对于轻松管理系统资源和监控进程至关重要。 虽然本文教了您一些最基本的 top 命令,但还有许多其他命令使 Linux top 命令成为一个强大的工具。 我们希望您能够熟悉使用 Linux top 命令。 如果您有任何疑问或疑问,请将它们放在下面的评论中。