一、命令说明

top 命令能够实时监控系统的运行状态,并且可以按照CPU、内存和执行时间进行排序,同时top 命令还可以通过交互式命令进行设定显示,通过top 命令可以查看即时活跃的进行。

二、参数说明

  • -b:批次模式运行。通常用作来将top 的输出的结果传送给其他程式或储存成文件
  • -c:显示执行任务的命令行
  • -d:设定延迟时间
  • -h:帮助
  • -H:显示线程。当这个设定开启时,将显示所有进程产生的线程
  • -i:显示空闲的进程
  • -n:执行次数。一般与-b 搭配使用
  • -u:监控指定用户相关进程
  • -U:监控指定用户相关进程
  • -p:监控指定的进程。当监控多个进程时,进程ID 以逗号分隔。这个选项只能在命令行下使用
  • -s:安全模式操作
  • -S:累计时间模式
  • -v:显示top 版本,然后退出
  • -M:自动显示内存单位(k/M/G)

三、top交互命令

1、全局命令

  • 回车、空格:刷新显示信息
  • ?或h:帮助
  • =:移除所有任务显示的限制
  • A:交替显示模式切换
  • B:粗体显示切换
  • d或s:更改界面刷新时间间隔
  • G:选择其它窗口/栏位组
  • I:Irix 或Solaris 模式切换
  • u或U:监控指定用户相关进程
  • k:结束进程
  • q:退出top
  • r:重新设定进程的nice 值
  • W:存储当前设定
  • Z:改变颜色模板

2、摘要区命令

  • l:平均负载及系统运行时间显示开关
  • m:内存及交换空间使用率显示开关
  • t:当前任务及CPU 状态显示开关
  • 1:汇总显示CPU 状态或分开显示每个CPU 状态

3、任务区命令

  • 外观样式
  •  b:黑体/反色显示高亮的行/列。控制x 和y 交互命令的显示样式
  • x:高亮显示排序的列
  •  y:高亮显示正在运行的任务
  •  z:彩色/黑白显示。
  • 显示内容
  •  c:任务执行的命令行或进程名称
  •  f或o:增加和移除进程信息栏位及调整进程信息栏位显示顺序
  •  H:显示线程
  •  S:时间累计模式
  •  u:监控指定用户相关进程
  • 任务显示的数量
  •  i:显示空闲的进程
  •  n或#:设置任务显示最大数量
  • 任务排序(shift+f)
  •  M:按内存使用率排序
  •  N:按PID 排序
  •  P:按CPU 使用率排序
  •  T:按Time+排序
  •  <:按当前排序栏位左边相邻栏位排序
  •  >:按当前排序栏位右边相邻栏位排序
  •  F或O:选择排序栏位
  •  R:反向排序

四、参数解释

1、第一行是任务队列信息,同uptime 命令,其内容解释如下:

21:59:09 当前时间
up 11:21 系统运行时间,格式为:时:分
2 users 当前登录用户数
load average:0.05,0.01,0.01 系统负载,即任务队列的平均长度,三个数值分别为:1分钟、5分钟、15分钟前到现在的平均值

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

Task:113 total 进程总数
1 running 正在运行的进程数
112 sleeping 休眠的进程数
0 stoped 停止的进程数
0 zombie 僵尸进程数
Cpu(s):0.3%us 用户进程消耗的CPU时间百分比
0.0%sy 系统进程消耗的CPU时间百分比
0.0%ni 用户进程空间内改变过优先级的进程占CPU时间百分比
99.7%id CPU空闲状态的时间百分比
0.0%wa I/O等待所占的CPU时间百分比
0.0%hi CPU服务于硬中断所耗费的时间总额
0.0%si CPU服务于软中断所耗费的时间总额
0.0%st CPU服务于软中断所耗费的Steal Time

3、第四五行为内存信息

Mem:1030616K total 物理内存总量
698152k used 已使用的物理内存总量
332464k free 空闲的物理内存总量
31392k buffers 用做内核缓存的内存总量
Swap:2064376k total 交换分区总量
0k used 已使用的交换分区
2064376k free 空闲的交换分区
117716k cached 缓冲的交换分区总量。

4、进程信息

PID 进程ID
PPID 父进程ID
RUSER Real User Name
UID 进程所有者的用户ID
USER 进程所有者的用户名
GROUP 进程所有者的组名
TTY 启动进程的终端名,不是从终端启动的进程则显示为?
PR 优先级
NI nice值,负值表示高优先级,正值表示低优先级
P 最后使用的CPU,仅在多CPU环境下有意义
%CPU 上次更新到现在的CPU时间占用百分比
TIME 进程使用的CPU时间总计,单位秒
TIME+ 进程使用的CPU时间总计,单位百分之一秒
%MEM 进程使用的物理内存百分比
VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
SWAP 进程使用虚拟内存中,被换出的大小,单位kb
RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
CODE 可执行代码占用的物理内存大小,单位kb
DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小
SHR 共享内存大小,单位kb
nFLT 页面错误次数
nFRT 最后一次写入到现在,被修改过的页面数
S

进程状态:

D:不可中断的睡眠状态

R:运行

S:睡眠

T:跟踪/停止

Z:僵尸进程

COMMAND 命令名/命令行
WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
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 键可以将当前的排序倒转。

Linux监控命令之==>top的更多相关文章

  1. Linux监控命令整理(top,free,vmstat,iostat,mpstat,sar,netstat)

    1.1 top 1.1.1 命令说明 Top 命令能够实时监控系统的运行状态,并且可以按照cpu.内存和执行时间进行排序 1.1.2 参数说明 命令行启动参数: 用法: top -hv | -bcis ...

  2. linux监控命令全覆盖(图文说明)

    1.1 top 1.1.1 命令说明 Top 命令能够实时监控系统的运行状态,并且可以按照cpu.内存和执行时间进行排序 1.1.2 参数说明 命令行启动参数: 用法: top -hv | -bcis ...

  3. linux常用命令:top 命令

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是 一个动态显示过程,即可以通过用户按键来不断刷 ...

  4. 【操作系统之八】Linux常用命令之top

    一.概念Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,且可以通过交互式命令自定义显示内容,类似于Windows的任务管理器. 二.命令格式 [root@PCS101 log ...

  5. Linux常用监控命令简介 - top

    top -hv | -bcisS -d delay -n iterations -p pid [, pid ...] 指令介绍-b : 批次模式运行.-c : 显示执行任务的命令行.-d : 设定延迟 ...

  6. linux 监控命令

    先总结下常用的一些监控工具: ##linux命令 w 系统负载 lsof -p pid 进程打开的文件 lsof -i:port 端口的运行情况 free -m 内存情况 vmstat 进程.内存.内 ...

  7. Linux监控命令之==>sar

    一.使用说明 sar 是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情况.磁盘I/O.CPU效率.内存使用状况.进程活动及 ...

  8. linux监控命令nc用法

    一.nc命令检测端口的用法 # nc -v -w 10 %IP% -z %PORT% -v 显示指令执行过程. -w <超时秒数> 设置等待连线的时间. -u 表示使用UDP协议 -z 使 ...

  9. Linux监控命令之==>lsof

    一.命令说明 lsof 命令的原始功能是列出打开的文件的进程,但LINUX 下,所有的设备都是以文件的行式存在的,所以,lsof 的功能很强大. 二.参数说明 -a :列出打开文件存在的进程 -c&l ...

随机推荐

  1. 2019-11-29-dotnet-core-使用-CoreRT-将程序编译为-Native-程序

    title author date CreateTime categories dotnet core 使用 CoreRT 将程序编译为 Native 程序 lindexi 2019-11-29 08 ...

  2. python子进程模块subprocess详解

    subprocess--子进程管理器一.subprocess 模块简介subprocess最早是在2.4版本中引入的.subprocess模块用来生成子进程,并可以通过管道连接它们的输入/输出/错误, ...

  3. Librepilot-创建UAVObject及编译到飞机端和地面站端的步骤

    1. 创建UAVObject描述文件(xx.xml),并存放到\librepilot\shared\uavobjectdefinition目录中:2. 在\librepilot\flight\targ ...

  4. 001-cut 的用法

    [root@zabbix ~]# , /etc/passwd root: bin: daemon: adm: shutdown: halt: mail: operator: games: nobody ...

  5. SQL函数 Convert,dateadd

    1.SQL中CONVERT转化函数的用法 格式:CONVERT(data_type,expression[,style])说明:此样式一般在时间类型(datetime,smalldatetime)与字 ...

  6. 牛客假日团队赛6 D 迷路的牛 (思维)

    链接:https://ac.nowcoder.com/acm/contest/993/D 来源:牛客网 迷路的牛 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言 ...

  7. 3.4 jmu-java-随机数-使用蒙特卡罗法计算圆周率的值 (10 分)

    import java.util.Scanner; import java.util.Random; public class Main {         public static void ma ...

  8. Bootstarp-table入门(1)

    https://blog.csdn.net/dlf123321/article/details/52231926?locationNum=11&fps=1

  9. 拦截器HandlerInterceptor内部也可以注入bean,代码纠正补充

    原文地址https://www.jianshu.com/p/890c23a1b3d7 原文内容 1.拦截器内无法通过SpringBean的方式注入LoggerJPA,我只能通过另外一种形式. priv ...

  10. 查看系统的DPI

    #include <Windows.h> #include <iostream> int main() { SetProcessDpiAwarenessContext(DPI_ ...