一、命令介绍

Linux top命令用于实时显示 process (进程)的动态。
它用于监控正在运行系统负荷的信息,包括系统负载、CPU利用分布情况、内存使用、每个进程的资源占用情况等。
使用权限:所有使用者

二、命令结果详解

在命令行下输入 “top”指令后,窗口显示内容:

linux top命令 java linux top命令参数详解_服务器


前5行是系统整体信息:

linux top命令 java linux top命令参数详解_linux top命令 java_02


top:当前时间

up:设备运行时长

users:当前登录用户数量

load average:系统负载

说明:系统负载有三个值,分别表示1分钟内、5分钟内、15分钟内系统负载的平均值,用于观测系统负载在不同时间的情况,数值不能超过设备的总核数。进程数量信息:

linux top命令 java linux top命令参数详解_服务器_03


tasks:总进程数量;

running:当前正在运行的进程数量;

sleeping:未运行的进程数量;

stopped:停止的进程数量;

zombie:僵尸进程数量;CPU相关信息:

linux top命令 java linux top命令参数详解_linux_04


us:用户空间占CPU的百分比;

sy: 内核空间占CPU的百分比;

ni:用户进程空间改变过优先级;

id: 空闲CPU占用率;

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

hi: 硬中断占用百分比;

si:软中断占用百分比;

st:steal time物理内存相关信息:

linux top命令 java linux top命令参数详解_物理内存_05


Kib Mem:总物理内存总量;

total:总内存总量;

free:空闲内存总量;

used:已使用内存总量;

buff/cache:缓存内存总量;交换区相关信息:

linux top命令 java linux top命令参数详解_linux top命令 java_06


total:交换区内存总量;

free:空闲交换区内存总量;

used:已使用交换区内存总量;

avail Mem:缓冲交换区内存总量;实际运行中的进程标题:

linux top命令 java linux top命令参数详解_服务器_07


Pid:process ID,进程id;

USER:进程所有者的用户名;

PR:优先级;

NI:nice值,负值表示高优先级,正值表示低优先级;

VIRT:进程的虚拟内存使用量;

RES:进程使用中,未被置换出来的物理内存大小;

SHR:共享内存大小;

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

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

%MEM:物理内存占用百分比;

TIME+:进程使用的时间总计;

COMAND:命令名

三、top命令使用说明

语法:
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

参数说明:

d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
S : 累积模式,会将己完成或消失的子进程 ( dead child process ) 的 CPU time 累积起来
s : 安全模式,将交谈式指令取消, 避免潜在的危机
i : 不显示任何闲置 (idle) 或无用 (zombie) 的进程
n : 更新的次数,完成后将会退出 top
b : 批次档模式,搭配 “n” 参数一起使用,可以用来将 top 的结果输出到档案内

四、应用实例

显示进程信息:top
显示完整命令:top -c
以批处理模式显示程序信息:top -b
以累积模式显示程序信息:top -S
设置信息更新次数:top -n 2 //表示更新两次后终止更新显示:
设置信息更新时间:top -d 3 //表示更新周期为3秒
显示指定的进程信息:top -p 139 //显示进程号为139的进程信息,CPU、内存占用率等
显示更新十次后退出:top -n 10
使用者将不能利用交谈式指令来对行程下命令:top -s