1.top

输出项解释:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
top - 19:01:50 up 20 days, 1:20, 1 user, load average: 0.10, 0.08, 0.05 Tasks: 195 total, 1 running, 194 sleeping, 0 stopped, 0 zombie %Cpu(s): 2.7 us, 1.0 sy, 0.0 ni, 96.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 8009340 total, 173388 free, 3699668 used, 4136284 buff/cache KiB Swap: 8257532 total, 7705852 free, 551680 used. 3993432 avail Mem 第一行:(第一行为任务队列信息) top - 19:01:50 (系统当前时间) up 20 days,1:20,(系统开机至今运行了20天1个小时...) 1 user,(当前系统登录了1个用户) load average: 0.10, 0.08, 0.05,(系统压力值(过去),在过去1分钟,5分钟,15分钟之前的平均压力值) 一般我们认为这个数值不能超过你的cpu的核心数,例如你的cpu是单核那么这个值超过1,那将是负载过高 第二行:(第二行内容为进程信息) Tasks: 195 total,系统中拢共有195个进程 1 running, 一个正在运行 194 sleeping, 194个是睡眠状态 0 stopped, 0个是停止状态 0 zombie, 0个僵死状态的 |
第三行:(显示cpu情况)
1 2 3 4 |
%Cpu(s): 2.7 us, cpu百分之2.7被用户占用 1.0 sy, 百分之1被系统占用 0.0 ni,百分之0的被修改过优先级的进程占用 96.3 id,百分之96.3是空闲的(这个才是最主要的 空闲嘛) |
第四行:(内存占用)
1 2 3 4 5 6 |
KiB Mem : 8009340 total, 173388 free, 3699668 used, 4136284 buff/cache KiB Mem : 8009340 total, 我的总共内存8G 173388 free, 被占用 3699668 used,空闲 4136284 buff/cache,缓冲区内存 |
第五行:(交换分区)
1 2 3 4 5 6 |
KiB Swap: 8257532 total, 7705852 free, 551680 used. 3993432 avail Mem KiB Swap: 8257532 total, 总共交换分区内存 7705852 free, 正在使用的 551680 used. 空闲的 3993432 avail Mem 缓存 |

接下来看看下面输出的内容

在top命令中是可以交互选择的,输入top命令进入,光标会停留在左上角,是可以输入的

输入?号,他会出现帮助文档
1 2 3 4 5 6 |
P:按cpu使用率排序 M:以内存使用率排序 N:以PID排序 T:按照cpu累计运行时间排序 TIME项排序 q:退出top |
top 命令选项
1 2 3 4 5 6 |
-d 秒数:指定top命令每隔几秒更新,默认是3秒 -b 使用批处理模式输出,一般和-n选项合用,用于把top命令重定向到文件中 -n 次数,指定top命令的执行次数,一般和-b选项合用 -p pid指定某个pid ,只查看某个进程 -s 使用top在安全模式运行,避免在交互模式中出现错误 -u 用户名:只监听某个用户的进程 |
例如只看某个进程id
1 |
top -p 4292 |

保存top结果到文件
1 |
top -b -n 1 > 1.txt #只执行一次的结果保存到1.txt 这个很常用,因为他看到的是所有的进程。会输出所有的结果到1.txt |
pstree 查看进程树
1 2 3 |
选项 -p :查看所有进程的pid -u :显示所属用户 |
他是用来看进程依赖关系的

kill命令
1 |
kill -l 查看信号 |

常用信号
1 2 3 4 5 |
1 :SIGHUP 让该信号进程立即关闭,然后重新读配置文件重启 2 :SIGINT 程序终止信号,用于终止前台进程,相当于输出ctrl+c快捷键 8 :SIGFPE 在发生致命的算术运算错误时发出,不仅包括浮点运算错误,还包括溢出以及除数为0,等其他所有算术的错误 9 :SIGKILL 用来立即结束进程,本信号不能被阻塞,忽略和处理,一般用于强制终止进程 14 : SIGALRM 时钟定时信号,计算的是实际的时间或时钟时间,alarm函数使用 |
kill 命令
1 2 3 4 5 |
kill [信号] PID 例: kill -9 [进程号] #kill后跟的是进程号 killall -9 [进程名] #killall后跟的是进程名 pkill -9 -t [终端名/进程名] |

当然了 fuser -k /dev/pts/0 也可以踢用户 pkill比他更方便
- 本文固定链接: https://www.yoyoask.com/?p=1450
- 转载请注明: shooter 于 SHOOTER 发表