Linux下top命令详解

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止. 比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定.

下面详细介绍它的使用方法。

top - 22:32:05 up  6:25,  2 users,  load average: 0.00, 0.00, 0.00

Tasks:  86 total,   1 running,  85 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:   1030680k total,   432156k used,   598524k free,    58000k buffers

Swap:  2129904k total,        0k used,  2129904k free,   281932k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

1 root      20   0  2900 1496 1264 S  0.0  0.1   0:02.37 init

2 root      20   0     0    0    0 S  0.0  0.0   0:00.01 kthreadd

3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0

4 root      20   0     0    0    0 S  0.0  0.0   0:00.41 ksoftirqd/0

5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0

6 root      RT   0     0    0    0 S  0.0  0.0   0:00.36 watchdog/0

7 root      20   0     0    0    0 S  0.0  0.0   0:02.21 events/0

8 root      20   0     0    0    0 S  0.0  0.0   0:00.00 cgroup

9 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khelper

10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 netns

11 root      20   0     0    0    0 S  0.0  0.0   0:00.00 async/mgr

12 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pm

13 root      20   0     0    0    0 S  0.0  0.0   0:00.18 sync_supers

14 root      20   0     0    0    0 S  0.0  0.0   0:00.13 bdi-default

15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kintegrityd/0

统计信息区

前五行是系统整体的统计信息。

第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:

22:33:35 #当前时间

up 6:26 #系统运行时间,格式为[时:分]

2 users #当前登录用户数

load average: 0.06, 0.60, 0.48 #系统负载,即任务队列的平均长度;三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值.

第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:

Tasks: 29 total #进程总数

1 running  #正在运行的进程数

28 sleeping  #睡眠的进程数

0 stopped  #停止的进程数

0 zombie  #僵尸进程数

Cpu(s):

0.3% us  #用户空间占用CPU百分比

1.0% sy  #内核空间占用CPU百分比

0.0% ni  #用户进程空间内改变过优先级的进程占用CPU百分比

98.7% id  #空闲CPU百分比

0.0% wa  #等待输入输出的CPU时间百分比

0.0% hi

0.0% si

最后两行为内存信息。内容如下:

Mem:

191272k total #物理内存总量

173656k used  #使用的物理内存总量

17616k free  #空闲内存总量

22052k buffers  #用作内核缓存的内存量

Swap:

192772k total  #交换区总量

0k used  #使用的交换区总量

192772k free  #空闲交换区总量

123988k cached  #缓冲的交换区总量

内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已存在于内存中的交换区的大小。相应的内存再次被换出时可不必再对交换区写入。

进程信息区

统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。

序号-列名-含义

a PID 进程id

b PPID 父进程id

c RUSER Real user name

d UID 进程所有者的用户id

e USER 进程所有者的用户名

f GROUP 进程所有者的组名

g TTY 启动进程的终端名。不是从终端启动的进程则显示为

h PR 优先级

i NI nice值。负值表示高优先级,正值表示低优先级

j P 最后使用的CPU,仅在多CPU环境下有意义

k %CPU 上次更新到现在的CPU时间占用百分比

l TIME 进程使用的CPU时间总计,单位秒

m TIME+ 进程使用的CPU时间总计,单位1/100秒

n %MEM 进程使用的物理内存百分比

o VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

p SWAP 进程使用的虚拟内存中,被换出的大小,单位kb。

q RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

r CODE 可执行代码占用的物理内存大小,单位kb

s DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb

t SHR 共享内存大小,单位kb

u nFLT 页面错误次数

v nDRT 最后一次写入到现在,被修改过的页面数。

w S 进程状态。

D=不可中断的睡眠状态

R=运行

S=睡眠

T=跟踪/停止

Z=僵尸进程

x COMMAND 命令名/命令行

y WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名

z Flags 任务标志,参考 sched.h

默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。

更改显示内容

通过 f 键可以选择显示的内容。按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定。

按 o 键可以改变列的显示顺序。按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z 可以将相应的列向左移动。最后按回车键确定。

按大写的 F 或 O 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的 R 键可以将当前的排序倒转。

命令使用

1.使用格式

top [-] [d] [p] [q] [C] [S] [s] [n]

2.参数说明

d 指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。

p 通过指定监控进程ID来仅仅监控某个进程的状态。

q该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。

S 指定累计模式

s 使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。

i 使top不显示任何闲置或者僵死进程。

c 显示整个命令行而不只是显示命令名

内部命令

在top命令执行过程中可以使用的一些交互命令。从使用角度来看,熟练的掌握这些命令比掌握选项还重要一些。这些命令都是单字母的,如果在命令行选项中使用了s选项,则可能其中一些命令会被屏蔽掉。

h显示帮助画面,给出一些简短的命令总结说明。

k 终止一个进程。系统将提示用户输入需要终止的进程PID,以及需要发送给该进程什么样的信号。一般的终止进程可以使用15信号;如果不能正常结束那就使用信号9强制结束该进程。默认值是信号15。在安全模式中此命令被屏蔽。

i 忽略闲置和僵死进程。这是一个开关式命令。

q 退出程序。

r 重新安排一个进程的优先级别。系统提示用户输入需要改变的进程PID以及需要设置的进程优先级值。输入一个正值将使优先级降低,反之则可以使该进程拥有更高的优先权。默认值是10。

S 切换到累计模式。

s 改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s。需要注意的是如果设置太小的时间,很可能会引起不断刷新,从而根本来不及看清显示的情况,而且系统负载也会大大增加。

f或者F 从当前显示中添加或者删除项目。

o或者O 改变显示项目的顺序。

l 切换显示平均负载和启动时间信息。

m 切换显示内存信息。

t 切换显示进程和CPU状态信息。

c 切换显示命令名称和完整命令行。

M 根据驻留内存大小进行排序。

P 根据CPU使用百分比大小进行排序。

T 根据时间/累计时间进行排序。

W 将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法

Linux下top命令详解相关推荐

  1. linux中top指令,Linux下top命令详解

    原标题:Linux下top命令详解 1.简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top显示系统当前的进程和其他状况 ...

  2. linux 之top命令详解

    http://bbs.54master.com/redirect.php?tid=272658&goto=lastpost 发表于 2008-9-21 16:31 linux 之top命令详解 ...

  3. linux之top命令详解

    linux之top命令详解 2018年8月15日 0:58 top:动态查看进程变化,监控linux的系统状况. top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况, ...

  4. linux下dd命令详解

    linux下dd命令详解    名称: dd 使用权限: 所有使用者dd 这个指令在 manual 里的定义是 convert and copy a file 使用方式: dd [option] 如果 ...

  5. linux下scp命令详解

    http://www.cnblogs.com/xuxm2007/archive/2010/08/04/1792179.html linux下scp命令详解 http://www.9usb.net/20 ...

  6. linux下tree命令详解

    From:http://blog.163.com/ly_89/blog/static/186902299201161302812880/ linux下tree命令详解---linux以树状图逐级列出目 ...

  7. linux系统rar命令行,Linux下rar命令详解

    Linux下rar命令详解 发布时间:2010-05-24 23:28:23   作者:佚名   我要评论 通常rar命令由一个主命令加若干选项(可选)构成,操作文档为操作施加的.rar文件对象,文件 ...

  8. linux cat命令缩写,linux下cat命令详解

    cat 能够一同显现多个文件的内容,比方咱们能够在一个cat指令上一同显现两个文件的内容;那么你知道linux下cat命令详解么?接下来是小编为大家收集的linux下cat命令详解,欢迎大家阅读: l ...

  9. linux中的ps fx命令,Linux下ps命令详解 Linux下ps命令的详细使用方法

    Linux下ps命令详解 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断 ...

最新文章

  1. 常用标准库_C语言标准IO库常用函数
  2. weedfs文件使用记录
  3. Android之判断网络状态(网络的连接,改变,和判断2G/3G/4G)
  4. java注解 sql_mybatis中注解映射SQL示例代码
  5. HTML+CSS+JS实现 贪吃蛇游戏源码
  6. python找不到指定的模块是什么意思_Python找不到指定的模块
  7. HR面试问题(工作动机、个人愿望 )
  8. Maven - 配置setting.xml
  9. SI9000阻抗计算教程
  10. konika电视一直显示android,康佳多屏互动电视端下载
  11. 第1章 区块链是什么
  12. 2021东北师范大学计算机技术专业研究生入学复测考试
  13. 鱼塘钓鱼(贪心算法)--算法设计
  14. layui 模板引擎 例子
  15. 如何将自己的网站发布在互联网上?(仅针对小白,大佬忽略)
  16. python floor是什么意思_python里floor怎么用
  17. BIMC品牌整合营销:电子商务外包是中小企业未来发展方向
  18. 算法之狼羊菜过河问题
  19. 水星路由器DNS服务器未响应,用手机设置水星(mercury)路由器WiFi的步骤
  20. jQuery遍历对象/数组/集合

热门文章

  1. 操作系统之文件管理:6、文件的基本操作(创建文件、打开文件、删除文件、关闭文件、读文件、写文件)
  2. Python 进程锁使用
  3. Python paho-mqtt消息队列
  4. Nmap的高级扫描(脚本)
  5. List of Javascript Library / Ajax Framework / Web Application Framework
  6. spring 改变url
  7. Py与Py3的区别之输入input()函数
  8. css①字体颜色正常显示,背景透明②字体颜色与背景均为透明的设置方法
  9. MVC初学 - The type or namespace name 'DbContext' could not be found
  10. python 字符串函数总结