当前位置: 首页 > news >正文

Linux top指令

top指令概述

top 是 Linux 系统中用于实时监控系统性能和进程信息的命令,功能强大且灵活。它提供了系统资源的动态视图,包括 CPU、内存、运行中的进程等。

这个指令可以说是Linux中最基本的工具了,用来监视系统的实时运行状态,类似的程序还有很多,像是htopgtop,都是衍生版。基本来说,top够用了。

整理学习的Linux 指令的知识。这种指令也不用完全掌握,知道基本的用法就可以,了解一些快捷键,提高工作效率。
自己在Ubuntu或者WSL里面多尝试一些,这才是重要的<( ̄︶ ̄)↗[GO!]。

基本用法

top

输出会显示系统状态的实时更新列表,按默认的刷新间隔(通常是3秒)更新。

常见快捷键

在 top 的界面中,可以使用以下快捷键进行交互操作(注意区分大小写,多多尝试):

排序相关

按下g,可以选择1-4这几种排序字段,下面的都包括了
P:按 CPU 使用率排序(默认)。
M:按内存使用率排序。
T:按运行时间排序。

进程控制

k:终止某个进程,会提示输入 PID。
r:重新调整进程优先级(修改 nice 值)。

显示选项

h:显示帮助菜单。
1:显示每个 CPU 的使用情况。
c:显示或隐藏进程的完整命令路径。
q:退出 top。

过滤与搜索

/:查找特定的进程。
n:设置显示的进程数量。

常用组合推荐

按内存使用排序:M
按 CPU 使用排序:P
监控某用户的任务:u + 用户名
实时查看多核 CPU 状态:1
高亮排序字段:x

输出字段说明

top 界面顶部和进程列表分别包含系统摘要和具体进程信息:

系统摘要

uptime:系统已运行时间。
load average:系统负载(最近1、5、15分钟的平均值)。
tasks:任务总数及其状态(运行、睡眠、停止、僵尸等)。
%Cpu(s):CPU 使用情况(用户、系统、空闲等)。
Mem 和 Swap:物理内存和交换分区的使用情况。
例如下面的信息:

top - 15:32:32 up 54 min,  1 user,  load average: 0.11, 0.09, 0.06
Tasks:  67 total,   1 running,  66 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.4 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
MiB Mem :   7878.3 total,   5671.9 free,   1544.3 used,    662.1 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   6035.3 avail Mem

(1)系统信息

top - 15:32:32 up 54 min, 1 user, load average: 0.11, 0.09, 0.06
  • 当前时间:15:32:32
  • 系统运行时间:已经运行了 54 分钟。
  • 当前登录用户数:1 个用户。
  • 负载均值 (load average):过去 1 分钟:0.11 ; 过去 5 分钟:0.09 ; > 过去 15 分钟:0.06;

解释:负载均值越低,系统压力越小;当前负载非常低。
(2)任务状态

Tasks: 67 total, 1 running, 66 sleeping, 0 stopped, 0 zombie
  • 总任务数:67 个。
  • 运行中的任务:1 个任务处于运行状态。
  • 睡眠中的任务:66 个任务处于睡眠状态(等待事件触发)。
  • 停止的任务:0 个任务被停止。
  • 僵尸任务:0 个僵尸进程。

解释:系统大多数任务处于空闲或待机状态,负载轻。
(3)CPU使用率

%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.4 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
  • us(用户空间):0.3% 的 CPU 用于用户程序。
  • sy(系统空间):0.3% 的 CPU 用于内核操作。
  • ni(优先级):0.0% 的 CPU 用于调整进程优先级。
  • id(空闲):99.4% 的 CPU 处于空闲状态。
  • wa(IO等待):0.0% 的 CPU 等待 IO 操作完成。
  • hi(硬中断):0.0% 的 CPU 用于硬件中断处理。
  • si(软中断):0.1% 的 CPU 用于软件中断处理。
  • st(虚拟化偷取时间):0.0% 的 CPU 被虚拟机占用。

解释:CPU 使用率非常低,系统大部分时间处于空闲状态。
(4)内存使用

MiB Mem : 7878.3 total, 5671.9 free, 1544.3 used, 662.1 buff/cache
  • 总内存:7878.3 MiB。
  • 空闲内存:5671.9 MiB,约 72% 的内存空闲。
  • 已用内存:1544.3 MiB,约 19% 的内存正在被使用。
  • 缓存/缓冲区:662.1 MiB,被系统缓存使用的内存。

解释:内存利用率较低,系统内存资源充足。

(5)交换分区 (Swap) 使用

MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 6035.3 avail Mem
  • 总交换分区大小:2048.0 MiB。
  • 空闲交换分区:2048.0 MiB。
  • 已用交换分区:0.0 MiB。
  • 可用内存:6035.3 MiB,包含物理空闲内存和缓冲内存。

解释:系统没有使用交换分区,物理内存足以应对当前任务。
(6)总结
当前系统状态非常轻松:

  • CPU 主要处于空闲状态(99.4%)。
  • 内存和交换分区使用率低,资源充足。
  • 系统负载非常低(负载均值远低于 1)。
  • 没有僵尸进程或 IO 瓶颈。

进程信息

PID:进程 ID。
USER:运行该进程的用户。
PR 和 NI:优先级和 nice 值。
VIRT、RES、SHR:虚拟内存、常驻内存和共享内存使用情况。
%CPU 和 %MEM:进程的 CPU 和内存使用率。
TIME+:进程累计使用 CPU 的时间。
COMMAND:运行的命令或进程名称。

资料

[Unix/Linux TOP 指令使用详解]
[每天一个linux命令(44):top命令]
[top manual]

相关文章:

Linux top指令

top指令概述 top 是 Linux 系统中用于实时监控系统性能和进程信息的命令&#xff0c;功能强大且灵活。它提供了系统资源的动态视图&#xff0c;包括 CPU、内存、运行中的进程等。 这个指令可以说是Linux中最基本的工具了&#xff0c;用来监视系统的实时运行状态&#xff0c;类…...

Anaconda 安装与虚拟环境创建完整指南

Anaconda 安装与虚拟环境创建完整指南 Anaconda 是目前最流行的 Python 和数据科学工具集之一&#xff0c;它不仅可以轻松管理 Python 包&#xff0c;还能提供强大的虚拟环境功能&#xff0c;避免项目之间的依赖冲突。如果你是机器学习、数据科学或计算机视觉的开发者&#xf…...

基于自然语言处理(NLP)的智能客服系统

基于自然语言处理&#xff08;NLP&#xff09;的智能客服系统是现代客户服务领域的一项重要技术&#xff0c;它通过模拟人类对话的方式&#xff0c;为用户提供及时、准确和个性化的服务。以下是关于基于NLP的智能客服系统的一些关键要素和功能&#xff1a; 1. 自然语言理解&am…...

C语言期末复习题(PTA)

去字符串中的重复字符与空格 dele函数的功能&#xff1a;对给定的字符串&#xff0c;去掉重复的字符与字符串中的空格后&#xff0c;按照字符ASCII码顺序从小到大排序后输出。 输入样例&#xff1a; abcd efg abc fH 3 2 1 输出样例&#xff1a; 123Habcdefg 测试程序样例&am…...

Ubuntu 中安装 RabbitMQ 教程

简介 RabbitMq作为一款消息队列产品&#xff0c;它由Erlang语言开发&#xff0c;实现AMQP&#xff08;高级消息队列协议&#xff09;的开源消息中间件。 应用场景 异步处理 场景说明&#xff1a;用户注册后&#xff0c;注册信息写入数据库&#xff0c;再发邮件、短信通知。 …...

如何测试模型推理精度:Python初学者指南

如何测试模型推理精度&#xff1a;Python初学者指南 什么是模型推理精度&#xff1f;使用工具包&#xff1a;lm-evaluation-harness安装工具包 测试模型推理精度的步骤1. 加载模型和分词器2. 使用 lm-evaluation-harness 进行测试3. 运行脚本4. 查看结果 总结 在机器学习和深度…...

人工智能与区块链的碰撞:双剑合璧的创新前景

引言 人工智能&#xff08;AI&#xff09;与区块链技术&#xff0c;这两项曾经各自独立发展的前沿科技&#xff0c;如今正逐步走向融合。人工智能通过强大的数据处理能力和智能决策能力&#xff0c;在各个领域掀起了革命性的变革&#xff1b;而区块链凭借其去中心化、不可篡改的…...

安装Visual studio2022后,没法新建.net 4.5.2的项目

在Visual Studio 2022中无法新建.NET Framework 4.5.2的项目&#xff0c;通常是因为Visual Studio 2022默认不再支持较旧的.NET Framework版本&#xff0c;如4.5或4.5.2。不过&#xff0c;你可以通过一些手动步骤来使Visual Studio 2022支持.NET Framework 4.5.2项目。以下是一…...

小程序配置文件 —— 12 全局配置 - pages配置

全局配置 - pages配置 在根目录下的 app.json 文件中有一个 pages 字段&#xff0c;这里我们介绍一下 pages 字段的具体用法&#xff1b; pages 字段&#xff1a;用来指定小程序由哪些页面组成&#xff0c;用来让小程序知道由哪些页面组成以及页面定义在哪个目录&#xff0c;…...

Flink Data Source详解

注意在高版本中SourceFunction以及其子类RichSourceFunction、ParallelSourceFunction等已经被标记为废弃,所以我们要看数据源的实现只需要关注Source接口(org.apache.flink.api.connector.source.Source)。了解Source背后的架构和运行原理有助于我们更好的使用Source,或者…...

Spring Boot 介绍与应用

什么是 Spring Boot&#xff1f; Spring Boot 是一个用于简化 Spring 应用程序开发和部署的框架&#xff0c;它建立在 Spring 框架的基础之上&#xff0c;但去除了繁琐的配置。Spring Boot 采用“约定优于配置”的原则&#xff0c;默认启用了大量自动配置&#xff0c;使得开发…...

并行编程实战——TBB框架的应用之五Supra中IGTL的应用

一、OpenIGTLink OpenIGTLink&#xff0c;可以简称为IGTL。它是一个专供医疗应用的网络通信库。IGTL可以应用各种传感器、手术机器人和成像仪等的数据传输。OpenIGTLink是有一系列的协议在底层支持的&#xff0c;它是跨平台的&#xff0c;应用也非常简单。 OpenIGTLink迭代还是…...

【Golang 面试题】每日 3 题(八)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…...

11. 日常算法

1. 141. 环形链表 题目来源 给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数 pos 来表示链表尾连接…...

FPGA三模冗余TMR工具(二)

学术和商业领域有许多自动化的三模冗余TMR工具&#xff0c;本文介绍当前主流的基于寄存器传输级的三模冗余工具&#xff08;Register-Transfer Level&#xff0c;RTL&#xff09;&#xff0c;基于重要软核资源的三模冗余工具&#xff0c;以及新兴的基于高层次综合的三模冗余工具…...

springboot499基于javaweb的城乡居民基本医疗信息管理系统(论文+源码)_kaic

摘 要 信息数据从传统到当代&#xff0c;是一直在变革当中&#xff0c;突如其来的互联网让传统的信息管理看到了革命性的曙光&#xff0c;因为传统信息管理从时效性&#xff0c;还是安全性&#xff0c;还是可操作性等各个方面来讲&#xff0c;遇到了互联网时代才发现能补上自古…...

MF248:复制工作表形状到Word并调整多形状位置

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套&#xff0c;分为初级、中级、高级三大部分&#xff0c;教程是对VBA的系统讲解&#…...

微信流量主挑战:用户破16!新增文档转换(新纪元3)

朋友们&#xff0c;报告好消息&#xff01;我的小程序用户数量已经涨到16个了&#xff01;没错&#xff0c;真没拉朋友圈亲戚好友来撑场子&#xff0c;全靠实力&#xff08;和一点点运气&#xff09;吸引了16位陌生小伙伴光临&#xff01;这波进步&#xff0c;连我自己都感动了…...

SelectionArea 实现富文本

使用 SelectionArea Text.rich TextSpan WidgetSpan实现富文本。 前置知识点学习 SelectionArea SelectionArea 是 Flutter 中的一个组件&#xff0c;用于管理文本的选择功能。它允许用户在应用中选择和复制文本&#xff0c;这是在支持文本选择的应用程序中常见的功能。Se…...

upload-labs关卡记录17

该关卡&#xff0c;依旧是上传图片马到服务器&#xff0c;然后借助文件包含漏洞来运行一句话木马&#xff0c;这里还是老样子&#xff0c;先上传我们之前制作的图片马&#xff1a; 上传成功后&#xff0c;复制链接然后通过文件包含漏洞来尝试&#xff0c;发现不可行&#xff1a…...

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”&#xff0c;无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息&#xff1a; 关注测试号&#xff1a;扫二维码关注测试号。 发送模版消息&#xff1a; import requests da…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)

宇树机器人多姿态起立控制强化学习框架论文解析 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架&#xff08;一&#xff09; 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...