欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

linux命令 top命令

程序员文章站 2022-07-05 23:30:35
前言 top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。并提供了互动界面,用。 语法 top -hv | -bcHiOSs -...

前言
top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。并提供了互动界面,用。

语法

  top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]

选项
-b:分批次显示结果。每次刷新的时候,是以追加的形式,而不是覆盖。
-c:显示完整的命令。
例子:
linux命令 top命令

-H:显示进程对应开了的线程信息,和-p/-P 配合使用。上面例子有包含。
-i :使top不显示如何闲置或者僵死进程。
-O:输出top可以输出的选项:

wuzm@ubuntu:~$ top -O 
PID
PPID
UID
USER
RUID
RUSER
SUID
SUSER
GID
GROUP
PGRP
TTY
TPGID
SID
PR
NI
nTH
P
%CPU
TIME
TIME+
%MEM
VIRT
SWAP
RES
CODE
DATA
SHR
nMaj
nMin
nDRT
S
COMMAND
WCHAN
Flags
CGROUPS
SUPGIDS
SUPGRPS
TGID
ENVIRON
vMj
vMn
USED
nsIPC
nsMNT
nsNET
nsPID
nsUSER
nsUTS

-s:使top在安全模式中运行,避免交互命令带来潜在的危险。
-S:指定累计模式。
-d secs:top交互模式刷新的时间间隔
-u|U user:只显示对应user开启的服务
-p pid(s):指定进程pid,只监控对应的服务
-o field:按照对应列排序。比如按照pid排序如下:
linux命令 top命令
-w [col]: 暂时还不知道有什么用。。。

字段解析:

wuzm@ubuntu:~$ top -o PID -n 1

top - 23:45:38 up 20:35,  1 user,  load average: 0.27, 0.19, 0.13
Tasks: 227 total,   1 running, 226 sleeping,   0 stopped,   0 zombie
%Cpu(s): 11.0 us,  1.7 sy,  0.1 ni, 85.6 id,  0.5 wa,  0.0 hi,  1.2 si,  0.0 st
KiB Mem :  2018052 total,   108948 free,  1417864 used,   491240 buff/cache
KiB Swap:  1046524 total,   677372 free,   369152 used.   355252 avail Mem 

1、top - 23:45:38 【系统当前时间】
2、up 20:35 【系统以及运行了16天】
3、1 user 【1一个用户当前登录】
4、load average: 0.27, 0.19, 0.13 【系统辅助,任务队列平均长度,三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值】
5、Tasks: 227 total 【进程总数为227个】
6、1 running 【正在运行的进程个数为1】
7、226 sleeping 【正处于睡眠状态的进程个数为226】
8、0 stopped 【处于停止状态的进程个数为0】
9、0 zombie 【僵尸进程0个】
10、%Cpu(s): 11.0 us, 1.7 sy, 0.1 ni, 85.6 id, 0.5 wa, 0.0 hi, 1.2 si, 0.0 st

11.0% us, 用户空间占用CPU百分比
1.7% sy, 内核空间占用CPU百分比
0.1% ni, 用户进程空间内改变过优先级的进程占用CPU百分比
85.6% id, 空闲CPU百分比
0.5% wa,等待输入输出的CPU时间百分比
0.0% hi, 硬件CPU中断占用百分比
1.2% si,软中断占用百分比
0.0% st,虚拟机占用百分比

KiB Mem : 2018052 total, 108948 free, 1417864 used, 491240 buff/cache

单位均为KB
2018052 total, 物理内存总量
108948 free, 空闲内存总量
1417864 used, 使用的内存总量
491240 buff/cache, 用作内核缓存的内存量

KiB Swap: 1046524 total, 677372 free, 369152 used. 355252 avail Mem

单位均为KB
1046524 total,交换区总量
369152 used, 使用的交换区总量
677372 free, 空闲的交换区总量
355252 avail Mem,缓冲的交换区总量,内存重的内容被换出到交换区,而后又被换入到内存,但使用过的交换区中的交换区的大小,相应的内存再次被换出是可不用再对交换区写入。

显示部分字段解析:
* PID = Process Id nsUSER = USER namespace Inode
* USER = Effective User Name nsUTS = UTS namespace Inode
* PR = Priority
* NI = Nice Value
* VIRT = Virtual Image (KiB)
* RES = Resident Size (KiB)
* SHR = Shared Memory (KiB)
* S = Process Status
* %CPU = CPU Usage
* %MEM = Memory Usage (RES)
* TIME+ = CPU Time, hundredths
* COMMAND = Command Name/Line
PPID = Parent Process pid
UID = Effective User Id
RUID = Real User Id
RUSER = Real User Name
SUID = Saved User Id
SUSER = Saved User Name
GID = Group Id
GROUP = Group Name
PGRP = Process Group Id
TTY = Controlling Tty
TPGID = Tty Process Grp Id
SID = Session Id
nTH = Number of Threads
P = Last Used Cpu (SMP)
TIME = CPU Time
SWAP = Swapped Size (KiB)
CODE = Code Size (KiB)
DATA = Data+Stack (KiB)
nMaj = Major Page Faults
nMin = Minor Page Faults
nDRT = Dirty Pages Count
WCHAN = Sleeping in Function
Flags = Task Flags