学而实习之 不亦乐乎

Linux:top命令

2020-08-19 19:29:11

top命令用于实时监测系统资源使用状况,包含,进程、cpu,内存等。

1、用法

top [选项]

2、命令选项

-b 以批处理模式操作
-c 显示完整的治命令
-d 屏幕刷新间隔时间
-I 忽略失效过程
-s 保密模式
-S 累积模式
-i<时间> 设置刷新间隔时间
-u<用户名> 指定用户名
-p<进程号> 指定进程
-n<次数> 循环显示的次数

3、在该命令中常用快捷键

? 显示在top中可以输入的按键命令,想查看所有的快捷键,可以使用
h 同 ?
k 终止一个进程
i 开/关忽略闲置和僵死进程
q 退出程序
r 重新安排一个进程的优先级别
S 切换到累计模式
s 更改刷新间隔时间,单位秒
f,F 从当前显示中添加或者删除项目
o,O 改变显示项目的顺序
l 切换显示平均负载和启动时间信息
m 切换显示内存信息
t 切换显示进程和CPU状态信息
c 切换显示命令名称和完整命令行
M 根据内存使用大小排序
N 以PID来排序
P 根据CPU使用率进行排序 (默认排序)
T 根据时间累积(TIME+)进行排序
w 将当前设置写入~/.toprc文件中
1 展开多核cpu显示

4、输出说明

top - 18:17:22 up 8:52, 1 user, load average: 0.05, 0.04, 0.05
Tasks: 99 total, 2 running, 97 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.1 sy, 0.0 ni, 99.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 739932 total, 353944 free, 125284 used, 260704 buff/cache
KiB Swap: 1044476 total, 1044476 free, 0 used. 459304 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
47 root 20 0 0 0 0 S 0.1 0.0 0:36.55 kworker/0:1
643 root 20 0 21668 1284 972 S 0.1 0.2 0:18.13 irqbalance
1668 root 20 0 0 0 0 S 0.1 0.0 0:01.08 kworker/1:1
1 root 20 0 127968 6480 4096 S 0.0 0.9 0:01.93 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.23 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root rt 0 0 0 0 S 0.0 0.0 0:00.02 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 R 0.0 0.0 0:01.95 rcu_sched
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-drain

说明
前5行为系统总体资源统计情况
top    系统当前时间
up    系统已开机多长时间
user    当前用户数
load average cpu平均负载,三个数值分别为,1分钟,5分钟,15分钟

Tasks    系统当前进程数,total:总进程数,running:正在运行的进程数,sleeping:睡眠的进程数,stopped:停止的进程数,zombie:僵尸进程数
%Cpu(s)    cpu使用率,us:用户使用cpu百分百,sy:系统内核使用cpu百分百,id:剩余的cpu百分百
Mem    内存使用信息,total:总内存大小,free:空闲的内存,used:已使用的内存,buff/cache:缓存的内存大小

Swap    虚拟内存信息
PID    进程id
USER    进程所有者
PR    优先级
NI    nice值,负值表示高优先级,正值表示低优先级
VIRT    进程使用的虚拟内存总量
RES    进程使用的物理内存大小
SHR    共享内存大小
S    进程状态,D:不可中断的睡眠状态,R:运行,S:睡眠,T:跟踪/停止,Z:僵尸进程
%CPU    进程使用的CPU占用百分比
%MEM    进程使用的物理内存百分比
TIME+    进程使用的CPU时间总计
COMMAND    命令名

5、实例

显示进程信息
# top

显示完整命令
# top -c

以批处理模式显示程序信息
# top -b

以累积模式显示程序信息
# top -S

设置信息更新次数(表示更新两次后终止更新显示)
top -n 2

设置信息更新时间(表示更新周期为3秒)
# top -d 3

显示指定的进程信息(显示进程号为139的进程信息,CPU、内存占用率等)
# top -p 139

显示更新十次后退出
# top -n 10

使用者将不能利用交谈式指令来对行程下命令
top -s