Linux top初学者命令教程(8个示例)

在使用Linux命令行时,有时可能需要检查与进程相关的详细信息,例如哪个进程正在消耗CPU或m ...

Linux top初学者命令教程(8个示例)

在Linux命令行上工作时,有时您可能需要检查与进程相关的详细信息,例如哪个进程最耗费CPU或内存? 好吧,有一个命令 - 配音顶部 - 可以让你轻松地做到这一点。 在本教程中,我们将使用一些易于理解的示例来讨论此工具。

但在我们这样做之前,值得一提的是,本文中提到的所有示例都已经在Ubuntu 16.04 LTS机器上进行了测试。

Linux顶级命令

top命令显示当前由Linux内核管理的进程或线程列表,以及与它们相关的有用信息。 以下是该工具的语法:

top [options]

以下是该工具的手册页中所说的内容:

       The  top  program  provides  a dynamic real-time view of a running
       system.  It can display system summary information as  well  as  a
       list  of processes or threads currently being managed by the Linux
       kernel.  The types of system summary  information  shown  and  the
       types,  order  and size of information displayed for processes are
       all user configurable and that configuration can be  made  persis?
       tent across restarts.

       The  program  provides a limited interactive interface for process
       manipulation as well as a much more extensive interface  for  per?
       sonal  configuration   --  encompassing every aspect of its opera?
       tion.

以下是一些Q&A风格的示例,可以让您对top命令的工作原理有所了解。

Q1。 如何使用顶级?

很简单,只需执行'top'命令sans任何选项:

top

这是我在系统上生成的输出:

如何使用top命令

请注意,您在屏幕截图中看到的只是生成的实时输出(在固定间隔后更改)的快照。

Q2。 如何理解top命令输出?

让我们从第一行开始。 它包含(按此顺序),当前时间,自系统启动和运行以来的持续时间,活动用户会话以及系统上的平均负载(分别为最后一分钟,五分钟和十五分钟)的条目。

第二行包含关于总数进程,正在运行的进程数,休眠进程数,已停止的进程数以及僵尸状态中的进程数的信息(按此顺序)。

第三行包含CPU使用信息。 以下是详细信息:

           us, user    : time running un-niced user processes
           sy, system  : time running kernel processes
           ni, nice    : time running niced user processes
           id, idle    : time spent in the kernel idle handler
           wa, IO-wait : time waiting for I/O completion
           hi : time spent servicing hardware interrupts
           si : time spent servicing software interrupts
           st : time stolen from this vm by the hypervisor

接下来的两行显示了与RAM和交换内存使用情况相关的信息。 最后,来自流程相关信息,包括(按此顺序)流程ID,拥有流程的用户,流程的优先级,流程的优秀价值,流程使用的虚拟,物理和共享内存,流程状态(睡眠,运行或僵尸),CPU和RAM使用情况,活动时间以及启动该过程的命令。

Q3。 如何从顶部输出中杀死进程?

这很简单 - 只需按'k',top就会询问您要杀死的进程的PID。 您将在包含流程列标题的行上方看到类似于以下内容的消息:

PID to signal/kill [default pid = 3397]

如何从顶部输出中删除进程

所以你看,你可以输入进程ID,或者默认情况下,top会尝试查杀(通过发送SIGTERM)列表中的第一个进程。 一旦发送信号,就会产生类似于以下的消息。

Send pid 3007 signal [15/sigterm]

Q4。 如何更改流程的优先级?

就像'k'用于查杀一样,如果您想要更改进程的优先级(或者您想要重新设置它),可以按'r'。 按'r'会产生类似于以下内容的消息:

PID to renice [default pid = 3397] 

因此,无论是输入PID还是top,都会尝试默认情况下重新列出列表中第一个进程的优先级。 例如,我传递了一个PID,然后顶部问我新的好价值。

Renice PID 2665 to value

只需提供一个值,然后按回车键,您就会看到相关流程的好价值会发生变化。

Q5。 如何更改top命令的刷新率?

默认情况下,top会在每3秒后刷新一次输出,但您可以通过按“d”调整此值。 该命令将要求您输入新的延迟值:

Change delay from 3.0 to 

只需输入值,然后按Enter键。 而已。

Q6。 如何将top命令输出限制为用户?

默认情况下,top命令显示所有进程。 但是,您可以通过按“u”将输出限制为特定用户。

Which user (blank for all)

只需在上面的行中输入用户名,然后按Enter键,您将看到输出将仅包含您输入其名称的用户所拥有的那些进程。

例如,我输入'root',这是输出:

如何将top命令输出限制为用户

Q7。 如何使用参数进行顶部显示完整命令?

这可以通过按'c'来完成。 这是一个例子:

如何使用参数进行顶部显示完整命令

因此,您现在可以在输出中看到完整的命令路径以及命令行参数。

Q8。 如何获得交互式top命令的帮助?

要获得与交互式顶级命令相关的帮助,请按“h”。 在输出中,您将看到可用的命令以及它们的作用。 例如,当我按下'h'时,这就是我系统上弹出的内容。

如何获得交互式顶级命令的帮助

结论

我们刚刚在这里摸索了一下。 top命令提供了更多功能。 一旦你理解了我们在本文中讨论过的内容并完成了它的实践,请访问顶部的手册页以了解更多信息。


分享按钮