首先我的系统是 centos 8.0
一、查看 cpu/内存 使用情况
1、top 命令
top
显示全部进程(只要你屏幕够长,就能全部显示😂),动态的
2、ps -aux 命令
ps -aux
显示全部进程,静态的,相当于一瞬间的截图
3、ps -ef 命令
ps -ef
显示全部静态进程,相比 ps aux 少一些标题
4、ps 其他参数
ps 命令查找与进程相关的PID号:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定"A"参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
ps u 以用户为主的格式来显示程序状况。
ps x 显示所有程序,不以终端机来区分。
二、排序进程
1、复杂方法
linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|sort -rn -k +3|head
linux下获取占用内存资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|sort -rn -k +4|head
head 默认获取10行,可以在后面加 -n 控制显示数量,如获取三行
ps aux|head -1;ps aux|sort -rn -k +3|head -3
该命令组合实际上是下面两句命令:
ps aux|head -1
主要是为了获取标题(USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND)
ps aux|sort -rn -k +3|head
sort -rn -k +3该命令中的-rn的r表示是结果倒序排列,n为以数值大小排序,而-k +3则是针对第3列的内
容进行排序,第三列是 cpu,第四列是内存,再使用head命令获取默认前10行数据。(其中的|表示管
道操作)
2、简单方法
用 top 命令动态显示进程状态
top
按照 cpu 排序,输入完 top 命令,按大写 P,一定要是大写
按照内存 排序,输入完 top 命令,按大写 M,一定要是大写
三、杀死进程
会看占用资源最多的进程了,但你肯定不仅限于就看看它,有时你开心的敲命令呢,感觉输入时一顿
一顿的,可能就是某个进程占用 cpu/内存 太多(占用100% 时会出现卡死),资源耗尽,当你将进程
排序之后发现现在并不需要它,可以将他杀死
kill 9 pid
9代表强制快速停止,pid 为你要停止的进程id,完美
想要了解更多 kill 命令的戳下面博客