每天一个linux命令(1):top命令

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

  1.命令格式:

    top [参数]

  2.命令功能:

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

  3.命令参数:

    -b 批处理

    -c 显示完整的治命令

    -I 忽略失效过程

    -s 保密模式

    -S 累积模式

    -i<时间> 设置间隔时间

    -u<用户名> 指定用户名

    -p<进程号> 指定进程

    -n<次数> 循环显示的次数

  4.使用实例:

  实例1:显示进程信息

  命令:

    top

  输出:

[[email protected] ~]# top
top - 14:06:23 up 70 days, 16:44,  2 users,  load average: 1.25, 1.32, 1.35
Tasks: 206 total,   1 running, 205 sleeping,   0 stopped,   0 zombie
Cpu(s):  5.9%us,  3.4%sy,  0.0%ni, 90.4%id,  0.0%wa,  0.0%hi,  0.2%si,  0.0%st
Mem:  32949016k total, 14411180k used, 18537836k free,   169884k buffers
Swap: 32764556k total,        0k used, 32764556k free,  3612636k cached
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
28894 root      22   0 1501m 405m  10m S 52.2  1.3   2534:16 java
18249 root      18   0 3201m 1.9g  11m S 35.9  6.0 569:39.41 java
 2808 root      25   0 3333m 1.0g  11m S 24.3  3.1 526:51.85 java
25668 root      23   0 3180m 704m  11m S 14.0  2.2 360:44.53 java
  574 root      25   0 3168m 611m  10m S 12.6  1.9 556:59.63 java
 1599 root      20   0 3237m 1.9g  11m S 12.3  6.2 262:01.14 java
 1008 root      21   0 3147m 842m  10m S  0.3  2.6   4:31.08 java
13823 root      23   0 3031m 2.1g  10m S  0.3  6.8 176:57.34 java
28218 root      15   0 12760 1168  808 R  0.3  0.0   0:01.43 top
29062 root      20   0 1241m 227m  10m S  0.3  0.7   2:07.32 java
    1 root      15   0 10368  684  572 S  0.0  0.0   1:30.85 init
    2 root      RT  -5     0    0    0 S  0.0  0.0   0:01.01 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
    4 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/0
    5 root      RT  -5     0    0    0 S  0.0  0.0   0:00.80 migration/1
    6 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1
    7 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/1
    8 root      RT  -5     0    0    0 S  0.0  0.0   0:20.59 migration/2
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.09 ksoftirqd/2
   10 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/2
   11 root      RT  -5     0    0    0 S  0.0  0.0   0:23.66 migration/3
   12 root      34  19     0    0    0 S  0.0  0.0   0:00.03 ksoftirqd/3
   13 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/3
   14 root      RT  -5     0    0    0 S  0.0  0.0   0:20.29 migration/4
   15 root      34  19     0    0    0 S  0.0  0.0   0:00.07 ksoftirqd/4
   16 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/4
   17 root      RT  -5     0    0    0 S  0.0  0.0   0:23.07 migration/5
   18 root      34  19     0    0    0 S  0.0  0.0   0:00.07 ksoftirqd/5
   19 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/5
   20 root      RT  -5     0    0    0 S  0.0  0.0   0:17.16 migration/6
   21 root      34  19     0    0    0 S  0.0  0.0   0:00.05 ksoftirqd/6
   22 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/6
   23 root      RT  -5     0    0    0 S  0.0  0.0   0:58.28 migration/7

说明:

统计信息区:

  前五行是当前系统情况整体的统计信息区。下面我们看每一行信息的具体意义。

  第一行,任务队列信息,同 uptime 命令的执行结果,具体参数说明情况如下:

    14:06:23 — 当前系统时间

    up 70 days, 16:44 — 系统已经运行了70天16小时44分钟(在这期间系统没有重启过的吆!)

    2 users — 当前有2个用户登录系统

    load average: 1.15, 1.42, 1.44 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。

    load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。

  第二行,Tasks — 任务(进程),具体信息说明如下:

    系统现在共有206个进程,其中处于运行中的有1个,205个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。

  第三行,cpu状态信息,具体属性说明如下:

    5.9%us — 用户空间占用CPU的百分比。

    3.4% sy — 内核空间占用CPU的百分比。

    0.0% ni — 改变过优先级的进程占用CPU的百分比

    90.4% id — 空闲CPU百分比

    0.0% wa — IO等待占用CPU的百分比

    0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比

    0.2% si — 软中断(Software Interrupts)占用CPU的百分比

  备注:在这里CPU的使用比率和windows概念不同,需要理解linux系统用户空间和内核空间的相关知识!

  第四行,内存状态,具体信息如下:

    32949016k total — 物理内存总量(32GB)

    14411180k used — 使用中的内存总量(14GB)

    18537836k free — 空闲内存总量(18GB)

    169884k buffers — 缓存的内存量 (169M)

  第五行,swap交换分区信息,具体信息说明如下:

    32764556k total — 交换区总量(32GB)

    0k used — 使用的交换区总量(0K)

    32764556k free — 空闲交换区总量(32GB)

    3612636k cached — 缓冲的交换区总量(3.6GB)

  第六行,空行。

  第七行以下:各进程(任务)的状态监控,项目列信息说明如下:

    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 — 进程名称(命令名/命令行)

时间: 2024-12-29 23:29:55

每天一个linux命令(1):top命令的相关文章

linux系统中top命令输出详解

Linux中的top命令显示系统正在运行的进程.它是系统管理员最重要的工具之一.被广泛用于监视服务 器的负载.top是一个交互命令.在运行top的时候还可以运行很多命令.我们会探索top命令的细节,以 及这些命令. (译注:不同发型版本的top命令,在各种细节有所不同,如果发现不同时,请读你的帮助手册和命令内的帮助.) 1.Top命令输出: ------------------------------------------------------------------------- 首先,让

一张图详解Linux中的top命令

一张图详解Linux中的top命令及每个参数的含义:

每天一个linux命令(34)--top命令

今天给领导发邮件,我这边虽然显示发出去了,但是他那边一直没收到,结果我以为我发了,他又一直在那边等结果.所以说,以后要另外发个信息或者QQ微信之类的说一声. top命令是Linux 下常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top 是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,知道用户终止该程序为止.比较准确的说,top 命令提供了实时的对系统处理器的状态监视.它将显

Linux系统的top命令详解

top默认视图 代码如下: 第一行:top - 15:32:23 up 738 days,  3:43,  5 users,  load average: 0.06, 0.08, 0.0815:29:50 - 当前系统时间 738 days,  3:41 - 系统已经运行了738天3小时14分钟(在这期间没有重启过)5 users - 当前有5个用户登录系统load average: 0.06, 0.09, 0.08 - load average后面的三个数分别是1分钟.5分钟.15分钟的负载情

Linux下的top命令、%cpu和cps(s)到底是什么意思呢!

在linux的top命令里的cpu信息是什么意思呢?Cpu(s): 62.1% us, 15.9% sy,   0.1% ni, 19.4% id,   2.0% wa,   0.1% hi,   0.4% siMem:    8247956k total,   8232004k used,     15952k free,    205240k buffersSwap:   8191992k total,        48k used,   8191944k free,   7156092k

linux系统下top命令参数详解

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

为什么 Linux 的 htop 命令完胜 top 命令

在 Linux 系统中,top 命令用来显示系统中正在运行的进程的实时状态,它显示了一些非常有用的信息,比如 CPU 利用情况.内存消耗情况,以及每个进程情况等.但是,你知道吗?还有另外一个命令行工具 'htop',它与传统的 top 命令功能一样,但它有更加强大的功能及能显示更多的信息.这篇文章,我们会用实例来讨论这个 'htop' 命令. Linux 中的 htop 命令 下面是从 htop 的手册页摘抄下来的相关描述: 它类似于 top 命令,但可以让你在垂直和水平方向上滚动,所以你可以看

Linux命令:top命令

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

linux抓取top命令中数据的方法

top在linux中是一个非常直观的命令,可以清晰地看到各进程对资源的使用情况. ? 但是如果你想从top命令展示中提取某些数据出来,如果想当然地使用这句命令: top|grep xxx 就会被卡住,欲哭无泪. ? 我们不妨查一下top这个命令,看看是否有其他办法来把数据抓出来. ? 首先简单了解一下top这个命令. ? top是linux的一个性能分析工具,类似于windows的任务管理器.其最大特点有两个:动态.直观地显示进程占用资源情况. 执行top的时候,会在前台默认打开一个termin

Linux学习笔记--top命令(监控linux系统状况的命令)

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,比如cpu.内存的使用等,类似于Windows的任务管理器. 1. 命令格式: top [选项] 2. 常用选项: "top -c" 显示完整的命令行而不只是显示命令名. "top -d" 指定每两次屏幕信息刷新之间的时间间隔. "top -n 3" 指定循环的次数为3次. "top -u 用户名" 指定用户名. "top -p 进