侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux top命令用法详解:如何监控Linux系统和进程内存和CPU使用情况

Linux top命令介绍

top命令是Linux系统中最常用的命令之一,它可以显示系统的运行状态和进程信息,以及一些关于资源利用率的摘要信息,包括CPU和内存的使用情况。top命令提供了一个动态的实时视图,可以随时更新和刷新。top命令的全称是table of processes,意思是进程表。

适用的Linux版本

top命令适用于大多数Linux发行版,如Ubuntu、Debian、Fedora、CentOS等。不同的发行版可能会有一些细微的差异,例如显示的字段和选项。要查看top命令的版本,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ top -v

本文使用的是Ubuntu 18.04系统和top 3.3.12版本。

Linux top命令的基本用法

要运行top命令,只需要在终端中输入以下命令并按回车键:

[linux@bashcommandnotfound.cn ~]$ top

top命令会进入交互式模式,显示当前活动的进程和其他系统信息。你可以使用一些可用的选项和快捷键来自定义视图。

Linux top命令的常用选项说明

top命令支持以下常用选项:

选项说明
-h, --help显示帮助信息,然后退出程序
-v, --version显示库版本和使用提示,然后退出程序
-b, --batch启动批处理模式,允许将top命令的输出发送到文件或其他程序。在批处理模式下,top不接受输入,并且运行直到被杀死或达到指定的迭代次数
-c, --command切换显示命令行或程序名。如果上次记住的状态是显示命令行,则该字段现在显示程序名,反之亦然
-d, --delay指定刷新屏幕之前的延迟时间,覆盖默认值。该值以秒为单位。该命令接受小数秒,但不接受负数
-e, --kibibytes切换内存单位为kibibytes(1024字节),而不是默认的mebibytes(1048576字节)
-H, --threads显示单个线程而不是每个进程的所有线程之和
-i, --idle切换显示空闲进程。当该选项关闭时,top不显示自上次更新以来没有使用CPU资源的进程
-n, --iterations指定top产生的最大迭代次数,在达到该次数后退出程序
-o, --sort-key指定top用于排序进程的字段名。在字段名前加上+号强制top按照从高到低的顺序排序,加上-号则按照从低到高的顺序排序
-p, --pid指定要监视的一个或多个进程ID(PID),用逗号分隔。只有指定的进程会被显示
-u, --user指定要监视的一个或多个用户名或用户ID(UID),用逗号分隔。只有属于指定用户的进程会被显示
-w, --width指定屏幕宽度,覆盖默认值

Linux top命令的实例

查看系统摘要信息

[linux@bashcommandnotfound.cn ~]$ top

这个命令会显示系统的摘要信息,包括以下内容:

  • 系统运行时间和负载
  • 进程总数和各种状态的进程数
  • CPU的使用情况,包括用户空间、内核空间、优先级和空闲时间
  • 内存的使用情况,包括物理内存、交换空间和缓冲区
  • 平均每秒的输入输出传输量

查看进程列表

[linux@bashcommandnotfound.cn ~]$ top

这个命令会显示进程列表,包括以下内容:

  • 进程ID(PID)
  • 进程所属的用户(USER)
  • 进程的优先级(PR)和调度策略(S)
  • 进程占用的虚拟内存(VIRT)、物理内存(RES)和共享内存(SHR)
  • 进程占用的CPU百分比(%CPU)
  • 进程占用的内存百分比(%MEM)
  • 进程运行的时间(TIME+)
  • 进程的命令行或程序名(COMMAND)

按照CPU使用率排序进程

[linux@bashcommandnotfound.cn ~]$ top -o +%CPU

这个命令会按照CPU使用率从高到低排序进程,并显示进程列表。你也可以在交互式模式下按Shift+P键来实现同样的效果。

按照内存使用率排序进程

[linux@bashcommandnotfound.cn ~]$ top -o +%MEM

这个命令会按照内存使用率从高到低排序进程,并显示进程列表。你也可以在交互式模式下按Shift+M键来实现同样的效果。

查看指定用户的进程

[linux@bashcommandnotfound.cn ~]$ top -u dave

这个命令会只显示属于dave用户的进程,并显示进程列表。你也可以在交互式模式下按u键,然后输入用户名来实现同样的效果。

查看指定PID的进程

[linux@bashcommandnotfound.cn ~]$ top -p 1234,5678

这个命令会只显示PID为1234和5678的两个进程,并显示进程列表。你也可以在交互式模式下按k键,然后输入PID来实现同样的效果。

以批处理模式运行top命令

[linux@bashcommandnotfound.cn ~]$ top -b -n 5 > top.txt

这个命令会以批处理模式运行top命令,并将输出重定向到top.txt文件中。该命令会运行5次迭代后退出。你可以用less或cat命令查看文件内容。

Linux top命令的注意事项

  • 在交互式模式下,你可以使用一些快捷键来控制top命令的行为,例如:
    • q:退出top命令
    • h:显示帮助信息
    • l:切换显示或隐藏负载信息
    • t:切换显示或隐藏任务信息
    • m:切换显示或隐藏内存信息
    • s:改变刷新屏幕的延迟时间
    • r:改变一个进程的优先级(需要root权限)
    • k:杀死一个进程(需要root权限)
    • f:选择要显示的字段
    • x:切换高亮当前排序字段
    • z:切换彩色或单色显示模式
0

评论区