优秀的编程知识分享平台

网站首页 > 技术文章 正文

linux 命令行之你真的会用吗?--top 基本用法篇

nanyue 2024-07-31 12:07:20 技术文章 7 ℃

top是linux中统计进程及相关占用资源信息最基本的命令,可以显示系统的概要信息及内核对用户进程管理的资源信息,比如进程名称,pid,所属用户,cpu占用率,内存占用率等。

本节分享最基本的top使用方式,包括参数-c/-d/-u/-p/-H/M/P/N/T,及配合用法。

进入命令行,输入top后:

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 112m 41m 11m S 7.6 4.2 1:40.28 Xorg 
 2657 lance 20 0 91508 20m 11m S 2.7 2.1 0:12.99 gnome-terminal 
 

名词

PID:进程的ID

USER:进程所有者

PR:进程的优先级别priority,越小越优先被执行

NI:nice值,影响进程的优先级,负值表示更高的优先级,正值表示更低的优先级,0不需要调整优先级。

VIRT:进程占用的虚拟内存

RES:进程占用的物理内存

SHR:进程使用的共享内存

S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数

%CPU:进程占用CPU的使用率

%MEM:进程使用的物理内存和总内存的百分比

TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

COMMAND:进程启动命令及参数

-c/c Command line/Program name toggle

最后一行COMMAND切换是否显示为全路径,-c可以在top进入的时候使用也可以在top显示时按c。

切换前:

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 111m 40m 9592 S 20.9 4.1 1:26.76 Xorg 
 2773 lance 20 0 90380 16m 11m S 5.6 1.6 0:06.46 gnome-terminal 
 2336 lance 20 0 143m 12m 10m S 0.7 1.3 0:03.25 metacity 
 2474 lance 20 0 81232 17m 12m S 0.7 1.8 0:04.92 vmtoolsd 

切换后:

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 126m 53m 11m S 16.2 5.4 1:37.00 /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch -backgro
 2773 lance 20 0 90600 16m 11m S 1.3 1.6 0:08.06 gnome-terminal 
 2474 lance 20 0 81232 17m 12m S 0.6 1.8 0:05.14 /usr/lib/vmware-tools/sbin32/vmtoolsd -n vmusr --blockFd 3 
 3250 lance 20 0 2856 1184 880 R 0.6 0.1 0:00.05 top 
 1 root 20 0 3676 2044 1312 S 0.0 0.2 0:03.16 /sbin/init 

-d/d : Delay time interval, default 3s

设置top刷新时间,可以在top进入的时候使用 top -d 5或者在top使用过程中,按d输入需要调整的delay时间,默认为3s。

top运行时按下d键:

top - 07:47:41 up 46 min, 3 users, load average: 0.06, 0.06, 0.13
Tasks: 177 total, 2 running, 175 sleeping, 0 stopped, 0 zombie
Cpu(s): 22.6%us, 5.7%sy, 0.0%ni, 71.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 848024k used, 177184k free, 61928k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395120k cached
Change delay from 3.0 to: 
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 115m 44m 11m R 22.3 4.5 1:43.65 Xorg 
 3267 lance 20 0 2856 1176 880 R 1.9 0.1 0:00.13 top 
 1 root 20 0 3676 2044 1312 S 0.0 0.2 0:03.16 init 
 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 

-u username

选择显示只查看那个用户的所属进程,可以在top进入的时候使用 top -u root或者在top使用过程中输入u,再输入用户名。

top使用过程中输入u:

top - 07:50:14 up 48 min, 3 users, load average: 0.02, 0.06, 0.13
Tasks: 177 total, 1 running, 176 sleeping, 0 stopped, 0 zombie
Cpu(s): 1.6%us, 0.8%sy, 0.0%ni, 97.5%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 847064k used, 178144k free, 61940k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395144k cached
Which user (blank for all): root
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 113m 43m 11m S 1.8 4.3 1:46.42 Xorg 
 2773 lance 20 0 90856 16m 11m S 0.3 1.6 0:09.34 gnome-terminal 
 1752 root 20 0 36368 4288 3484 S 0.2 0.4 0:07.82 vmtoolsd 
 2474 lance 20 0 81232 17m 13m S 0.2 1.8 0:05.80 vmtoolsd 
 2336 lance 20 0 143m 12m 10m S 0.1 1.3 0:04.27 metacity 
 

只查看root用户:

Tasks: 177 total, 1 running, 176 sleeping, 0 stopped, 0 zombie
Cpu(s): 28.3%us, 6.8%sy, 0.0%ni, 65.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 847064k used, 178144k free, 61940k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395144k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 113m 43m 11m S 26.4 4.3 1:50.32 Xorg 
 1752 root 20 0 36368 4288 3484 S 0.3 0.4 0:07.93 vmtoolsd 
 1 root 20 0 3676 2044 1312 S 0.0 0.2 0:03.16 init 
 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 
 3 root 20 0 0 0 0 S 0.0 0.0 0:00.16 ksoftirqd/0 
 4 root 20 0 0 0 0 S 0.0 0.0 0:01.50 kworker/0:0 
 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 
 7 root 20 0 0 0 0 S 0.0 0.0 0:02.68 rcu_sched 

-p pid

指定查看的pid信息,只查看所指定的pid,这个参数只能在输入top是一起使用,不是交互式参数,例如:top -p 1402

Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie
Cpu(s): 3.6%us, 3.9%sy, 0.7%ni, 89.4%id, 2.4%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 848172k used, 177036k free, 62000k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395140k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 115m 44m 11m S 23.8 4.5 1:53.49 Xorg 

-H

显示子线程信息,可以在top进入的时候使用 top -H或者在top使用过程中输入H。

例如:top -p 2773 -H,只查看2773进程及其线程信息。

Tasks: 4 total, 0 running, 4 sleeping, 0 stopped, 0 zombie
Cpu(s): 3.7%us, 3.8%sy, 0.6%ni, 89.5%id, 2.3%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 849364k used, 175844k free, 62060k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395156k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 2773 lance 20 0 90856 16m 11m S 0.0 1.6 0:11.39 gnome-terminal 
 2774 lance 20 0 90856 16m 11m S 0.0 1.6 0:00.00 dconf worker 
 2775 lance 20 0 90856 16m 11m S 0.0 1.6 0:00.03 gdbus 
 2781 lance 20 0 90856 16m 11m S 0.0 1.6 0:00.00 gmain

sort

‘M’ to sort by memory usage

按照内存使用率排序显示,由高到低。

Tasks: 177 total, 2 running, 175 sleeping, 0 stopped, 0 zombie
Cpu(s): 14.1%us, 5.6%sy, 0.0%ni, 80.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 848500k used, 176708k free, 62080k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395164k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 2354 lance 20 0 249m 57m 30m S 0.0 5.8 0:10.19 unity-2d-shell 
 2711 lance 30 10 152m 54m 35m S 0.0 5.4 0:08.87 update-manager 
 1402 root 20 0 113m 43m 11m R 14.0 4.3 2:03.84 Xorg 
 2372 lance 20 0 137m 26m 15m S 0.0 2.6 0:03.00 nautilus 
 2355 lance 20 0 107m 23m 17m S 0.0 2.3 0:02.52 unity-2d-panel 
 2384 lance 20 0 89348 19m 10m S 0.0 2.0 0:01.69 unity-panel-ser

‘P’ to sort by CPU usage

按照CPU使用率排序显示,由高到低。

Tasks: 177 total, 1 running, 176 sleeping, 0 stopped, 0 zombie
Cpu(s): 27.2%us, 7.4%sy, 0.0%ni, 65.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 848488k used, 176720k free, 62088k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395168k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 113m 43m 11m S 24.2 4.3 2:07.21 Xorg 
 2773 lance 20 0 90856 16m 11m S 4.0 1.7 0:12.46 gnome-terminal 
 2336 lance 20 0 144m 13m 10m S 1.7 1.3 0:05.56 metacity 
 1752 root 20 0 36368 4288 3484 S 0.7 0.4 0:08.80 vmtoolsd 
 2354 lance 20 0 249m 57m 30m S 0.7 5.8 0:10.26 unity-2d-shell 
 2271 lance 20 0 49868 12m 7276 S 0.3 1.3 0:00.73 gnome-session 
 2375 lance 20 0 77312 10m 8596 S 0.3 1.1 0:00.41 bluetooth-apple 
 2494 lance 20 0 10164 3512 3048 S 0.3 0.3 0:00.20 gvfsd-trash 

‘N’ to sort by process ID

按照PID大小排序显示,由高到低。

Tasks: 176 total, 2 running, 174 sleeping, 0 stopped, 0 zombie
Cpu(s): 11.5%us, 4.6%sy, 0.0%ni, 84.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 848592k used, 176616k free, 62112k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395172k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 3326 lance 20 0 2856 1176 880 R 0.8 0.1 0:00.04 top 
 3297 root 20 0 0 0 0 S 0.0 0.0 0:00.04 kworker/u16:0 
 3276 root 20 0 0 0 0 S 0.0 0.0 0:00.08 kworker/u16:2 
 3100 lp 20 0 6236 1376 1056 S 0.0 0.1 0:00.00 dbus 
 2854 lance 20 0 7184 3564 1600 S 0.0 0.3 0:00.29 bash 
 2780 lance 20 0 7184 3568 1600 S 0.0 0.3 0:00.39 bash 
 2779 lance 20 0 2408 736 608 S 0.0 0.1 0:00.00 gnome-pty-helpe 
 2773 lance 20 0 90856 16m 11m S 0.8 1.7 0:12.89 gnome-terminal 

‘T’ to sort by the running time

按照CPU占用时间排序显示,由高到低。

Tasks: 176 total, 2 running, 174 sleeping, 0 stopped, 0 zombie
Cpu(s): 14.6%us, 2.4%sy, 0.0%ni, 82.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1025208k total, 848612k used, 176596k free, 62128k buffers
Swap: 1046524k total, 0k used, 1046524k free, 395188k cached
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
 1402 root 20 0 113m 43m 11m R 12.1 4.3 2:12.64 Xorg 
 2773 lance 20 0 90856 16m 11m S 1.2 1.7 0:13.31 gnome-terminal 
 2354 lance 20 0 249m 57m 30m S 1.2 5.8 0:10.34 unity-2d-shell 
 1752 root 20 0 36368 4288 3484 S 0.0 0.4 0:08.90 vmtoolsd 
 2711 lance 30 10 152m 54m 35m S 0.0 5.4 0:08.88 update-manager 
 2474 lance 20 0 81232 17m 13m S 0.0 1.8 0:06.94 vmtoolsd 
 2336 lance 20 0 144m 13m 10m S 0.0 1.3 0:05.95 metacity 

好看的视频讲解:传送门


最近发表
标签列表