top 命令详解

概况

top命令是Linux下最常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

top命令

1.命令格式:

top [参数]

2.命令功能:

显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等

3.命令参数:

  • -b 批处理
  • -c 显示完整的命令
  • -I 忽略失效过程
  • -s 保密模式
  • -S 累积模式
  • -i<时间> 设置间隔时间
  • -u<用户名> 指定用户名
  • -p<进程号> 指定进程
  • -n<次数> 循环显示的次数

top命令的部分输出如下:

top命令分为上下两个部分:

    1. 上面是系统统计信息
    1. 下面是进程信息。

1. 系统统计信息

第一行:任务队列信息,同 uptime 命令的执行结果。

22:41:55 (当前系统时间) up 5 min(系统运行时间) 1 user (当前登录用户数) load average: 0.08, 0.09, 0.05 (系统的平均负载数,表示 1分钟、5分钟、15分钟到现在的平均数)

第二行:进程统计信息

71 total (系统当前总进程总数) 1 running (正在运行的进程数) 70 sleeping (睡眠进程数) 0 stopped (停止进程数) 0 zombie (僵尸进程数)

第三行:CPU 统计信息

0.0%us (用户空间CPU占用率) 0.2%sy (内核空间CPU占用率) 0.0%ni (用户进程空间改变过优先级的进程CPU的占用率) 99.8%id (空闲CPU占有率) 0.0%wa (等待输入输出的CPU时间百分比) 0.0%hi (硬件中断请求) 0.0%si (软件中断请求) 0.0%st (分配给运行在其它虚拟机上的任务的实际 CPU时间)

us: is meaning of "user CPU time" sy: is meaning of "system CPU time" ni: is meaning of" nice CPU time" id: is meaning of "idle" wa: is meaning of "iowait" hi:is meaning of "hardware irq" si : is meaning of "software irq" st : is meaning of "steal time"

第四行:内存状态

1018628k total (物理内存总量 1G) 201588k used (已使用的内存 200M) 817040k free (空闲内存 800M) 23112k buffers (内核缓存使用23M)

第五行 swap交换分区信息

1044476k total (交换分区总量 1G) 0 k used (已使用交换分区内存 0) 1044476k free (空闲交换分区 1G) 79948k cached (缓冲交换区 80M)

2. 进程信息

PID (进程id) USER (进程所有者的用户名) PR (进程优先级) NI (nice值。负值表示高优先级,正值表示低优先级) VIRT (进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES) RES (进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA) SHR (共享内存大小,单位kb) S (进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程) %CPU (上次更新到现在的CPU时间占用百分比) %MEM (进程使用的物理内存百分比) TIME+ (进程使用的CPU时间总计,单位1/100秒) COMMAND (进程名称[命令名/命令行])

查看每一个CPU详细信息

打开top命令后,按数字“1”键,可打开或关闭显示详细CPU统计信息,如下图:

高亮显示当前运行进程

打开top命令后,按字母“B”键,可打开或关闭当前进程的显示效果,如下图:

进程列表排序显示

进程列表默认是按照CPU的使用率进行排序的。如果向按照其它列进行排序可通过”shift + >”或”shift + <”可以向右或左改变排序列。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏mini188

基于 Asp.Net的 Comet 技术解析

Comet技术原理 来自维基百科:Comet是一种用于web的技术,能使服务器能实时地将更新的信息传送到客户端,而无须客户端发出请求,目前有两种实现方式,长轮询...

2448
来自专栏青玉伏案

Git知识总览(六) Git分支中的远程操作实践

前几篇博客陆陆续续的讲了好多关于Git操作的内容, 其中在上篇博客聊了《Git中的merge、rebase、cherry-pick以及交互式rebase》,本篇...

35411
来自专栏网络

Nginx 教程#1:基本概念

协作翻译 原文:Nginx Tutorial #1: Basic Concepts 链接:https://www.netguru.co/codestories/...

2378
来自专栏zingpLiu

IO模式和IO多路复用

  网络编程里常听到阻塞IO、非阻塞IO、同步IO、异步IO等概念,总听别人装13不如自己下来钻研一下。不过,搞清楚这些概念之前,还得先回顾一些基础的概念。

1363
来自专栏java一日一条

servlet/filter/listener/interceptor区别与联系

由于最近两个月工作比较清闲,个人也比较“上进”,利用工作空余时间,也继续学习了一下,某天突然想起struts2和struts1的区别的时 候,发现 为什么st...

612
来自专栏我的博客

jquery特殊字符问题处理

问题:今天项目上有个地方使用 $(“#lamp”).load(‘/admin/checklogin.php?sid=’+sid); 这样传递的时候遇到空格就...

3224
来自专栏H2Cloud

FFRPC应用之Client/Server

摘要: Ffrpc 进行了重构,精简了代码,代码更加清晰简洁,几乎完美的达到了我的预想。接下来将写几遍文章来介绍ffrpc可以做什么。简单总结ffrpc的特性是...

4005
来自专栏Python爬虫实战

Python爬虫利器:Requests库的使用

写了一些爬虫,从urllib库转到requests库,到目前为止,个人感觉requests库是最简单易用的HTTP库,以下这段话来自requests官网:

991
来自专栏Grace development

NGINX宏观手记

任何一个工具都有它的灵魂所在,作为一个PHP程序员,我们可能仅仅使用了它的一小部分,这篇文章让你更加了解Nginx,本章大多都是总结、翻译、整理 ,希望你可以知...

792
来自专栏架构说

河狸家:Redis 源码的深度剖析

大家好!我叫陈科,目前就职于河狸家,主要做架构方面的工作,今天和大家分享的是 Redis 的源码分析。 Redis 这个东西很简单,懂 C 语言的同学花一个下...

3617

扫码关注云+社区

领取腾讯云代金券