1.命令作用
显示Linux进程(display Linux processes); 显示当前系统资源使用信息列表
2.命令语法
Usage: top -hv|-bcHis -d secs -n max -u|U user -p pid -w [cols]
3.参数详解
OPTION:
- -h | -v,显示命令版本和使用提示,然后退出
- -b,批量模式操作;将所有信息打印发送到其他程序或者文件,常与 -n 和重定向一起使用
- -c,命令行程序名切换;显示进程完整命令行路径及参数,而非默认截断的进程名称;交互式可使用 c 进行切换
- -H,线程模式操作;指示顶部显示单个线程,若未使用此命令行选项,则会显示每个进程中所有线程的总和;交互模式可使用 H 进行切换
- -i,空闲进程切换;仅显示正在消耗系统资源(如 CPU、内存)的活跃进程,忽略处于IDLE(空闲)或 Z(僵尸)状态的进程;交互模式可使用 i 进行切换
- -s,安全模式(Secure-mode)运行,避免在交互模式中出现错误
- -d secs,延迟时间间隔;指定top命令每隔几秒更新,默认是 3 秒;格式如-d ss.t(s.1/10s)
- -n max,迭代次数限制;指定top信息刷新多少次后退出程序
- -u|U user,用户过滤模式;仅显示用户 ID 或用户名与所给内容相匹配的进程;-u 依据有效用户进行匹配;-U 则依据任何用户(真实用户、有效用户、保存用户或文件系统用户)进行匹配
- -p pid,PID模式;如-pN1 -pN2 ... or -pN1,N2,N3 ...;仅监控指定进程 ID 的进程
- -w [cols],指定宽度
交互命令:
- Z,B,E,e,全局: 'Z' 颜色; 'B' 粗体; 'E'/'e' 总结/任务单位显示切换
- l,t,m,总结概览切换: 'l' 平均负载; 't' task/cpu 统计; 'm' 内存信息
- 0,1,2,3,I,切换: '0' 0显示空; '1/2/3' cpus或numa节点视图; 'I' Irix模式
- f,F,X,字段: 'f'/'F' 添加/移除/排序字段/字段内容排序; 'X' 增加固定宽度
- L,&,<,>,定位: 'L'/'&' 查找/再次查找; '<'/'>' 左/右移动显示列
- R,H,V,J,Toggle: 'R' Sort; 'H' 线程; 'V' 树状视图; 'J' 左对齐Num justify
- c,i,S,j . Toggle: 'c' 命令名称/line切换; 'i' 空闲; 'S' 时间; 'j' Str justify
- x,y,Toggle highlights: 'x' sort field; 'y' running tasks
- z,b,切换: 'z' 红/无颜色切换; 'b' bold/reverse (only if 'x' or 'y')
- u,U,o,O,通过'u'/'U' 有效/任何用户过滤; 'o'/'O' 其他标准
- n,#,^O,设置: 'n'/'#' 设置显示任务数量; 显示: Ctrl+'O' 其他过滤
- C,切换滚动坐标消息,内容包括: up,down,left,right,home,end
- k,r,操作任务: 'k' kill; 'r' renice(调整优先级)
- d or s,设置更新间隔
- W,Y,写入配置文件'W';检查其他输出'Y'
- q,退出
- P,按照 CPU 的使用率排序,默认就是此选项
- M,按照内存的使用率排序
- N,按照 PID 排序
- T,按照 CPU 的累积运算时间排序,也就是按照 TIME+ 项排序
4.常用用例
4.1.输出说明
4.1.1.抬头说明
top - 20:59:46 up 1 day, 4:33, 7 users, load average: 0.00, 0.01, 0.05
Tasks: 242 total, 1 running, 241 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.3 us, 3.2 sy, 0.0 ni, 94.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 995924 total, 67984 free, 637412 used, 290528 buff/cache
KiB Swap: 2097148 total, 1980412 free, 116736 used. 112604 avail Mem
- 程序名-系统时间 服务器运行时间,登录用户数,CPU负载数(每隔5、10、15分钟使用CPU的平均量)
- 总进程数,运行进程数,睡眠进程数,停止进程数,僵尸进程数(可以切换到线程显示)
- 用户空间占CPU的百分比(us) 内核空间占CPU的百分比(sy) 用户进程空间改变过优先级(ni) 空闲CPU占用率(id) 等待输入输出的CPU时间百分比(wa) 硬中断占用百分比(hi) 软中断占用百分比(si) steal time(st)
- 物理内存总量 空间内存量 已使用内存量 用作内核缓存的内存量
- 交换区内存总量 空间交换区总量 已使用交换区总量 缓冲的交换区总量
4.1.2.进程说明
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
- PID,进程号
- USER,进程所属的用户名
- PR,进程优先级 (值RT 是实时的优先级)
- NI,任务优先级。PR与NI的差异:PR是进程内核中的真实优先级,NI是内核优先级的hit 。 负值的nice值具有更高的优先级,反之正的nice值意味着更低的优先级。
- VIRT,进程使用的虚拟内存总量:代码+数据+共享库+swap 页 (Swap 解释:把不常访问的内存先写到磁盘中, 然后释放这些内存,给其他更需要的进程使用。再次访问这些内存时,重新从 磁盘读入内存 )。
- RES,进程常驻物理内存大小 (非缓存)
- SHR,进程共享内存端的大小
- S,当前进程状态
- %CPU,进程使用的CPU的百分比
- %MEM,进程使用的物理内存的百分比
- %TIME+,进程CPU总用时
- COMMAND,进程启动命令.