linux top命令基本实战

Linux top命令基本实战

简介

top命令是一个常用的Linux系统性能监控工具,可以实时监控系统的CPU使用率、内存使用率、进程情况等系统资源信息。在快速排查一些系统故障或者优化性能的时候我们可以使用top命令来观察系统的各项指标情况,以及排查相关问题。

命令格式

top命令的基本格式为:

top [-u <用户名>] [-d <秒数>] [-c] [-p <进程号>] [-n <次数>]

参数说明:

  • -u:指定要监控的用户。
  • -d:指定刷新时间(单位为秒)。
  • -c:显示完整的命令行。
  • -p:指定要监控的进程号。
  • -n:指定何时后退出。

界面介绍

top命令的交互界面主要分为4个区域:

  • 第1个区域:显示系统信息、运行时间、负载等基本信息。
  • 第2个区域:显示进程信息,包括进程号、用户名、CPU使用率、内存使用率、命令等。
  • 第3个区域:显示系统各个CPU核心的CPU使用率。
  • 第4个区域:命令行提示符区域。

在这些区域中,我们可以通过一些快捷键操作来达到一些特定的目的,主要常用的快捷键如下所示:

  • q:退出top命令。
  • h:显示帮助信息。
  • k:结束某个进程,需要输入进程号。
  • M:按照内存排序进程。
  • P:按照CPU排序进程。
  • r:重新给某个进程分配优先级,需要输入进程号。
  • s:更改画面更新间隔,默认是3秒。
  • u:只列出某一个用户的进程,需要输入用户名。
  • 1:显示每个CPU内核的详细情况。
  • ?:显示帮助信息。

实例1:查看系统信息

我们可以使用top命令来实时查看系统的运行情况,例如系统运行负载等信息,命令如下:

top

运行后可以看到类似下面的信息:

top - 08:13:47 up 12 days, 22:47,  3 users,  load average: 0.13, 0.11, 0.06
Tasks: 167 total,   1 running, 166 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.4 us,  0.2 sy,  0.0 ni, 99.4 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7876.5 total,   2260.4 free,   3396.1 used,   1220.1 buff/cache
MiB Swap:  16384.0 total,  15908.2 free,    475.8 used.   4316.3 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
 16403 jason     20   0 8896124 960068 273084 S   3.0  12.1  25:18.06 chrome
  1761 root      20   0  540220  54352  40328 S   0.7   0.7   2:08.67 Xorg
  3051 jason     20   0 2919412 561728 200524 S   0.7   7.0  42:34.34 code
   747 root      19  -1  202660  95612  77376 S   0.4   1.2   0:33.85 systemd-journal
 22756 root      20   0       0      0      0 I   0.4   0.0   0:02.55 kworker/0:2-mm_pe
     1 root      20   0  169552  16628  11672 S   0.0   0.2   0:11.15 systemd
     2 root      20   0       0      0      0 S   0.0   0.0   0:00.07 kthreadd
     4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/0:-H

其中第1行主要是显示系统的基本信息和负载信息,第2行主要是显示进程相关信息,而第3行主要是显示CPU使用率的情况。我们可以通过查看这些信息来排查一些系统问题或者给系统进行优化。

实例2:按照CPU排序

我们可以使用top命令来按照CPU的使用率来排查某些进程的CPU使用情况,这对于排查负载相关问题非常有帮助。示例命令如下:

top -o %CPU

运行后可以看到类似下面的信息:

top - 08:17:16 up 12 days, 22:50,  3 users,  load average: 0.08, 0.10, 0.06
Tasks: 167 total,   1 running, 166 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.1 sy,  0.0 ni, 99.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7876.5 total,   2264.6 free,   3386.4 used,   1225.5 buff/cache
MiB Swap:  16384.0 total,  15908.2 free,    475.8 used.   4293.7 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
 16403 jason     20   0 8896124 958896 272628 R   8.6  12.1  25:18.67 chrome
  3051 jason     20   0 2919412 558896 198592 S   0.8   7.0  42:36.38 code
  1761 root      20   0  540220  54352  40328 S   0.4   0.7   2:08.98 Xorg
 22756 root      20   0       0      0      0 I   0.4   0.0   0:02.68 kworker/0:2-mm_pe
   747 root      19  -1  202660  95612  77376 S   0.2   1.2   0:34.10 systemd-journal
     1 root      20   0  169552  16628  11672 S   0.0   0.2   0:11.16 systemd
     2 root      20   0       0      0      0 S   0.0   0.0   0:00.07 kthreadd
     4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/0:-H

在这个命令中,我们可以看到系统已经按照CPU使用率的大小来进行了排序,从而看到了CPU占用最高的进程。这对于排查cpu满载等问题非常有帮助。

阅读剩余 55%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux top命令基本实战 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • Android实现美女拼图游戏详解

    Android实现美女拼图游戏详解攻略 介绍 美女拼图游戏是一种经典的益智游戏,玩家需要将打乱的图片拼接成完整的美女图片。在本攻略中,我们将详细讲解如何在Android平台上实现美女拼图游戏。 步骤 步骤一:准备资源 首先,我们需要准备游戏所需的资源,包括美女图片和拼图碎片图片。可以在互联网上找到一些美女图片,并使用图像处理软件将其分割成多个拼图碎片。 步骤…

    other 2023年9月7日
    00
  • 九度oj 题目1048:判断三角形类型

    九度oj 题目1048:判断三角形类型 题目描述 给定三条边,请你判断一下能不能组成一个三角形。 如果能组成三角形,你还需要告诉我们它的类型: 等边三角形 Equilateral Triangle 等腰三角形 Isosceles Triangle 直角三角形 Right Triangle 普通三角形 Common Triangle 不能构成三角形 Not A…

    其他 2023年3月28日
    00
  • C语言超全面讲解字符串函数

    C语言超全面讲解字符串函数攻略 序言 字符串是C语言中重要的数据类型,处理字符串是在C语言程序中常常遇到的任务。在C语言中,提供了多种不同的字符串函数,用于处理字符串,它们是操作字符串的重要工具。本文将对C语言中常见的字符串函数进行超全面的讲解,并提供两个实例进行说明。 C语言中常见的字符串函数 以下是C语言中常见的字符串函数: strlen size_t …

    other 2023年6月20日
    00
  • Oracle递归树形结构查询功能

    Oracle数据库提供了递归树形结构查询功能,可以通过WITH语句和CONNECT BY子句来实现。 1.实现步骤 1.1 创建一个或多个递归查询的公共表达式,使用WITH语句定义。公共表达式通过递归引用自己来实现递归查询。 1.2 在公共表达式中使用CONNECT BY子句来连接父节点和子节点,使用START WITH子句指定查询的根节点。 1.3 在查询…

    other 2023年6月27日
    00
  • python链表类中获取元素实例方法

    获取元素是链表类中常见的操作之一。对于Python链表,要获取元素通常有两种方法:索引和迭代器。 索引 要获取链表中的某个元素,可以通过索引来实现。在Python链表中,可以使用下标操作符[]来获取链表中特定位置的元素。下标从0开始,代表链表的第1个元素。 示例1:获取链表中指定位置的元素 class Node: def __init__(self, dat…

    other 2023年6月27日
    00
  • 华为鸿蒙官网推出 HarmonyOS 开发者资源中心:汇总原生库、三方库、示例代码等

    华为鸿蒙(HarmonyOS)是华为打造的一款全场景分布式操作系统。为方便开发者使用、开发和测试,华为在官网上推出了“HarmonyOS 开发者资源中心”。下面,我将详细介绍该资源中心的内容和使用方法。 资源中心的概述 HarmonyOS 开发者资源中心站点网址为 https://developer.harmonyos.com/cn/develop ,它提供…

    other 2023年6月26日
    00
  • iOS实现的多条折线图封装实例

    下面是“iOS实现的多条折线图封装实例”的完整攻略。 1. 需求分析 在开始进行多条折线图封装前,我们需要明确需求,分析出我们所需要的功能和特性。 1.1 功能需求 绘制多条折线图; 支持同时显示多个数据源; 支持自定义颜色、线型、数据点形状等设置; 支持显示数据点的数值; 支持动画效果。 1.2 技术需求 使用 Core Graphics 绘制折线图; 使…

    other 2023年6月25日
    00
  • C++实现静态链表

    C++实现静态链表 什么是静态链表 静态链表是使用数组实现的链表结构,也可以叫做顺序链表。使用静态链表可以避免频繁在内存中进行动态分配和释放,提高程序的运行效率。 静态链表的主要特点: 需要预分配一定数量的内存空间作为链表节点存储空间,因此具有固定的空间大小 通过数组下标和指针进行节点之间的链接 静态链表节点中需要额外存储指向下一个节点的指针 静态链表基本实…

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部