linux top命令详解

yizhihongxing

Linux top命令详解

简介

top 命令是 Linux 下用于实时监视系统的命令。它能动态地实时显示进程的资源占用情况,包括 CPU 占用率、内存使用、进程、线程等信息。

语法

top 命令的语法格式如下:

top [-] [d delay] [-n iterations] [-b] [-c] [-u username] [p pid]

参数说明:
- -d 为刷新周期,默认值是 3 秒
- -n 为显示的次数
- -b 为批量模式,可以配合重定向符输出到文件
- -c 为显示完整的进程命令(包含命令行参数)
- -u 指定用户
- -p 指定进程PID

使用示例

示例1

使用 top 命令查看系统中 CPU 和内存最占用的进程,按下键盘上的 M ,可以将进程按内存使用量排序。

top -o %MEM

输出结果:

top - 20:07:56 up 12 days, 1:56,  2 users,  load average: 0.09, 0.08, 0.09
Tasks: 205 total,   1 running, 204 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.3 id,  0.1 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   3951.2 total,    307.0 free,   2555.7 used,   1088.5 buff/cache
MiB Swap:   2048.0 total,   1979.0 free,     69.0 used.   1168.2 avail Mem   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
24771 zhangsan  20   0 27.990g 1.720g  17880 S   0.0   43.6  48:34.82 java
30355 lisi      20   0 14.596g 1.206g  14740 S   0.0   30.4  29:41.31 java

命令解释:
- -o %MEM 表示按进程内存使用率排序
- %CPU 表示 CPU 占用率,%MEM 表示内存占用率,TIME+ 表示运行时间。
- PID USER 进程号和运行进程的用户。
- VIRT 表示进程的虚拟内存使用量。
- RES 表示进程占用的物理内存大小。
- COMMAND 表示进程所对应的命令的名称。

示例2

使用 top 命令查看系统中运行最长的进程:

top -o time

输出结果:

top - 20:51:43 up 12 days,  2:40,  2 users,  load average: 0.05, 0.05, 0.05
Tasks: 205 total,   1 running, 204 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.3 id,  0.1 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   3951.2 total,    313.3 free,   2549.4 used,   1088.5 buff/cache
MiB Swap:   2048.0 total,   1977.0 free,     71.0 used.   1164.5 avail Mem    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
 1830 root      20   0 2283664 1.170g   8784 S   8.6   30.0 320:35.37 virtualbox

命令解释:
- -o time 表示按进程运行时间排序
- COMMAND 表示进程所对应的命令的名称。
- PID USER 进程号和运行进程的用户。
- %CPU 表示 CPU 占用率,%MEM 表示内存占用率,TIME+ 表示运行时间。

总结

top 命令是一个非常实用的命令,可以帮助我们更好地了解系统的运行情况。通过本文的介绍,相信大家已经能够对 top 命令有一个更加深入的了解了。

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

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • mysql中,now()函数和sysdate()函数有什么区别?

    问题描述:   今天在看mysql的时间函数,now()和sysdate(),记录下两者之间有什么不同. 实验过程: 1.执行以下的两个语句: mysql> select now(),sleep(2),now(); +———————+———-+———————+ | now() | sl…

    MySQL 2023年4月13日
    00
  • linux mysql定时备份并压缩

    1.检查mysql备份命令有没有作用 在var目录下创建backup目录,在backup目录下创建mysql目录用于存放mysql备份文件 cd到/var/backup目录下 mysqldump -uroot -pwh5268925 zhaochao > mysql/zhaochao.sql 如果成功,在/var/backup/mysql下会有zhao…

    MySQL 2023年4月13日
    00
  • mysql删除重复记录语句的方法

    下面是详细的mysql删除重复记录语句方法攻略: 1. 查找重复记录 在删除重复记录之前,首先需要确定哪些记录是重复的,可以使用以下语句查找在指定列中有重复值的记录: SELECT col1, col2, COUNT(*) FROM table_name GROUP BY col1, col2 HAVING COUNT(*) > 1; 其中,col1和…

    database 2023年5月22日
    00
  • Redis进阶一之浅析redis各种部署方案

    一、单机模式 单机模式架构图如下: 单机模式比较好理解,就是整个系统中只有一个redis节点,需要为所有连接的客户端提高读写服务,在小型项目中通过采用单机模式就可以正常工作。但是在中大型的项目架构中,单节点就会有一些问题会暴露出来。 1、内存瓶颈,数据量大时一台节点的内存无法存储所有的数据 2、IO瓶颈,客户端数量较多时,同时处理的客户端数量有限,且是单线程…

    Redis 2023年4月11日
    00
  • 在ASP.NET 2.0中操作数据之六十一:在事务里对数据库修改进行封装

    ASP.NET 2.0中提供了事务支持来确保对于数据库修改的操作是原子性、一致性、隔离性和持久性的。本文将详细讲解在事务里对数据库修改进行封装的完整攻略。 什么是事务? 事务是一组数据库操作,它们被看作单个操作单元,并且必须完全成功或完全失败。如果事务中的任何一项操作失败,则整个事务将被回滚到它之前的原始状态。在ASP.NET 2.0中,事务通常通过Tran…

    database 2023年5月21日
    00
  • 数据库查询优化(主从表的设计)

    数据库查询优化(主从表的设计)完整攻略 在大型网站或应用中,数据库查询优化至关重要。当查询数据量大、并发高的时候,数据库的性能会成为瓶颈,降低整个应用的响应速度。为了解决这一问题,可以采用主从表的设计来进行数据库查询优化。 什么是主从表设计? 主从表设计是一种数据库查询优化的方法,它是将数据存储在两个或多个表中,并利用主表和从表之间的关系进行查询数据的操作。…

    database 2023年5月19日
    00
  • 全新Mac配置PHP开发环境教程

    首先我们需要为Mac配置PHP开发环境,这个过程大致可以分为以下几个步骤: 安装Homebrew Homebrew是Mac OS X下面非常方便的包管理器,我们可以利用它来安装PHP版本和相关的扩展等。安装Homebrew的方式有两种,一种是命令行安装,另一种是通过官网安装。 命令行安装: $ /usr/bin/ruby -e "$(curl -f…

    database 2023年5月22日
    00
  • 29_对项目的redis cluster实验多master写入、读写分离、高可用性

    redis cluster搭建起来了 redis cluster,提供了多个master,数据可以分布式存储在多个master上; 每个master都带着slave,自动就做读写分离; 每个master如果故障,那么久会自动将slave切换成master,高可用 redis cluster的基本功能,来测试一下 1、实验多master写入 -> 海量数…

    Redis 2023年4月11日
    00
合作推广
合作推广
分享本页
返回顶部