Linux下的top命令笔记

99 阅读3分钟

本文已参与 ⌈新人创作礼⌋ 活动,一起开启掘金创作之路

命令: top - display Linux processes

用途:资源统计

格式讲解:

top - 09:02:23      up 17 min,     2 users,        load average: 0.00, 0.01, 0.05
    上次刷新时间     开机时长          登陆用户数      平均负载 1分钟,5分钟,15分钟

Tasks: 176 total,   1 running, 175 sleeping,   0 stopped, 	0 zombie
进程数  总数	          运行中	  休眠中	     (挂起的)       	僵尸进程

%Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
cpu情况	user      system   nice         idle    wait   硬中断  软中断   虚拟机占有

KiB Mem :  1867048 total,  1573584 free,   134952 used,   158512 buff/cache
单位KB						 用作内核缓存的内存量
KiB Swap:  2097148 total,  2097148 free,        0 used.  1559860 avail Mem 

神奇的f F参数,可定制要查看的列

列名		含义
	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时间总计,单位1/100秒
	%MEM		进程使用的物理内存百分比
	VIRT 		进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
	SWAP		进程使用的虚拟内存中,被换出的大小,单位kb。
	RES		进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATACODE    可执行代码占用的物理内存大小,单位kb
	DATA		可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
	SHR		共享内存大小,单位kb
	nFLT		页面错误次数
	nDRT		最后一次写入到现在,被修改过的页面数。
	S		进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
	COMMAND	命令名/命令行
	WCHAN		若该进程在睡眠,则显示睡眠中的系统函数名
	Flags		任务标志,参考 sched.h

帮助信息查看(h):

Help for Interactive Commands - procps-ng version 3.3.10
Window 1:Def: Cumulative mode Off.  System: Delay 3.0 secs; Secure mode Off.

  Z,B,E,e   Global: 'Z' colors; 'B' bold; 'E'/'e' summary/task memory scale
  l,t,m     Toggle Summary: 'l' load avg; 't' task/cpu stats; 'm' memory info
  0,1,2,3,I Toggle: '0' zeros; '1/2/3' cpus or numa node views; 'I' Irix mode
  f,F,X     Fields: 'f'/'F' add/remove/order/sort; 'X' increase fixed-width

  L,&,<,> . Locate: 'L'/'&' find/again; Move sort column: '<'/'>' left/right
  R,H,V,J . Toggle: 'R' Sort; 'H' Threads; 'V' Forest view; 'J' Num justify
  c,i,S,j . Toggle: 'c' Cmd name/line; 'i' Idle; 'S' Time; 'j' Str justify
  x,y     . Toggle highlights: 'x' sort field; 'y' running tasks
  z,b     . Toggle: 'z' color/mono; 'b' bold/reverse (only if 'x' or 'y')
  u,U,o,O . Filter by: 'u'/'U' effective/any user; 'o'/'O' other criteria
  n,#,^O  . Set: 'n'/'#' max tasks displayed; Show: Ctrl+'O' other filter(s)
  C,...   . Toggle scroll coordinates msg for: up,down,left,right,home,end

  k,r       Manipulate tasks: 'k' kill; 'r' renice
  d or s    Set update interval
  W,Y       Write configuration file 'W'; Inspect other output 'Y'
  q         Quit
          ( commands shown with '.' require a visible task display window ) 
Press 'h' or '?' for help with Windows,
Type 'q' or <Esc> to continue 

常用参数:

-u 只显示某个用户的

-p(pid) 某个进程的

-d 刷新时间间隔(s)

top -u postfix / top u postfix

top -p 1345 -p 2322 / top -p 2,3,8,9

top -d 10

top执行中常用命令:

0 隐藏值为0的项

1 显示各个cpu线程的情况

s 改变刷新间隔 Change delay

P 以cpu使用情况排序

M 以内存使用情况排序

L 定位字符串 Locate string

k 杀死某个进程(默认第一个)PID to signal/kill

f 添加或删除项目

q 退出

杀死一个被stopped的进程

jobs -l 或者 ps -elf | grep T

top中的k杀死 或 kill -9