加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

LINUX top命令详解

发布时间:2016-10-22 06:27:58 所属栏目:Linux 来源:网络整理
导读:top常用参数如下: -d :后面可以接秒数,就是整个程序画面更新的秒数。预设是 5 秒; -b :以批次的方式执行 top ,还有更多的参数可以使用喔! 通常会搭配数

top常用参数如下:

-d :后面可以接秒数,就是整个程序画面更新的秒数。预设是 5 秒;

-b :以批次的方式执行 top ,还有更多的参数可以使用喔!

通常会搭配数据流重导向来将批次的结果输出成为档案。

-n :与 -b 搭配,意义是,需要进行几次 top 的输出结果。

-p :指定某些个 PID 来进行观察监测而已。

在 top 执行过程当中可以使用的按键指令:

? :显示在 top 当中可以输入的按键指令;

P :以 CPU 的使用资源排序显示;--%CPU

M :以 Memory 的使用资源排序显示;--%MEM

N :以 PID 来排序--从大到小

T :由该 Process 使用的 CPU 时间累积 (TIME+) 排序。

k :给予某个 PID 一个讯号 (signal)

r :给予某个 PID 重新制订一个 nice 值。

常用命令组合:

[oracle@bys3 ~]$ top -d 2   ---两秒刷新一次

[oracle@bys3 ~]$ top -bn 1 >abc.log    ---将输出写入到指定文件

[oracle@bys3 ~]$ top -d 2 -p  2955     ---只输出指定进程的信息

top - 23:57:41 up  6:03,  4 users,  load average: 0.02, 0.02, 0.00

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

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

Mem:   1026688k total,   918396k used,   108292k free,    38260k buffers

Swap:  4249144k total,        0k used,  4249144k free,   627300k cached

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

2955 oracle    -2   0  365m  13m  12m S 13.0  1.4  44:39.75 oracle

实用----使用top命令后,还可以输入 P M N T等对输出信息进去排序--注意是大写。?号可以调出帮助。

TOP命令输出信息的解读:

top 可以持续的监测整个系统的程序工作状态,默认每5秒刷新一次。

输出分为上下两个部分:上部6行:系统概况。下部:每个process使用的资源情况,

默认只使用top命令时此部分输出的process行数不是固定的,按窗口大小来显示的,窗口越大显示越多。

如果使用top -bn 1这样,只输出一次结果,则会将所有进程信息都输出--此时可以将输出重定向到文件文件查看。

示例:

[oracle@bys3 ~]$ top -bn 1

top - 23:30:46 up  5:36,  4 users,  load average: 0.00, 0.00, 0.00

Tasks: 138 total,   1 running, 137 sleeping,   0 stopped,   0 zombie

Cpu(s):  1.0%us, 19.2%sy,  0.3%ni, 76.1%id,  3.3%wa,  0.0%hi,  0.1%si,  0.0%st

Mem:   1026688k total,   933452k used,    93236k free,    35964k buffers

Swap:  4249144k total,        0k used,  4249144k free,   638360k cached

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

2955 oracle    -2   0  365m  13m  12m S 11.7  1.4  41:13.71 oracle

1 root      20   0  2160  572  484 S  0.0  0.1   0:02.76 init

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

以下输出省略。

上部分--前五行:

第一行:

top - 23:30:46 up  5:36,  4 users,  load average: 0.00, 0.00, 0.00

和uptime输出一样

[oracle@bys3 ~]$ uptime

23:36:07 up  5:41,  4 users,  load average: 0.00, 0.00, 0.00

系统的当前时间,系统启动时间,当前登陆的用户数,1、5、10分钟的CPU负载情况-一般不过1

第二行:

Tasks: 138 total,   1 running, 137 sleeping,   0 stopped,   0 zombie

更多精彩内容:http://www.bianceng.cn/OS/Linux/

当前总进程数量,正在运行的,睡眠中的,停止的,zombie僵尸进程数-非0要注意查看

第三行:

Cpu(s):  1.0%us, 19.2%sy,  0.3%ni, 76.1%id,  3.3%wa,  0.0%hi,  0.1%si,  0.0%st

用户进程占用的CPU比例,内核战胜CPU比例,改变过优先级的用户进程占用CPU百分比,空闲CPU百分比,

等待输入输出的CPU时间百分比

第四行:

Mem:   1026688k total,   933452k used,    93236k free,    35964k buffers

物理内存总量-有单位K,已经使用的,空闲的,内核缓冲的内在量

第五行:

Swap:  4249144k total,        0k used,  4249144k free,   638360k cached

SWAP空间总大小-单位K,已经使用的,空闲的,缓冲的交换区总量--使用过又未被覆盖的SWAP

###############################################

第二部分:各进程详细信息--进程各列的具体含义

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

2955 oracle    -2   0  365m  13m  12m S 11.7  1.4  41:13.71 oracle

进程信息各列的具体含义:

PID              进程ID,

USER         进程所有者名,

PR               Priority 的简写,程序的优先执行顺序,越小越早被执行

NI                NICE值-负高优先,

VIRT           使用虚拟内存总量;

RES           进程使用的、未被换出的物理内存大小

SHR            共享内存大小。

S                  进程状态-R运行-S睡眠-T跟踪/停止-Z僵尸-D不可中断的睡眠状态

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

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

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

COMMAND 命令名/命令行

(编辑:佛山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读