1.找出占用CPU 内存过高的进程
#!/bin/bash
echo "-------------------CUP占用前10排序--------------------------------"
ps -eo user,pid,pcpu,pmem,args --sort=-pcpu |head -n 10
echo "-------------------内存占用前10排序--------------------------------"
ps -eo user,pid,pcpu,pmem,args --sort=-pmem |head -n 10
PS命令分析:
e 显示所有进程。
-f 全格式。
-h 不显示标题。
-l 长格式。
-w 宽输出。
a 显示终端上的所有进程,包括其他用户的进程。
r 只显示正在运行的进程。
x 显示没有控制终端的进程。
O[+|-] k1 [,[+|-] k2 [,…]] 根据SHORT KEYS、k1、k2中快捷键指定的多级排序顺序显示进程列表。
–sort X[+|-] key [,[+|-] key [,…]] 从SORT KEYS段中选一个多字母键。“+”字符是可选的,因为默认的方向就是按数字升序或者词典顺序。比如: ps -jax -sort=uid,-ppid,+pid。
–help 显示帮助信息。
–version 显示该命令的版本信息。
ps 的例子
ps -ef 查看全格式的全部进程
ps -ax 查看全部进程
ps -ef|grep <进程名> 查看并筛选 跟进程名有关的进程,该进程名可以是进程的全部或者部分
分析:
args:命令,它的所有参数都是字符串。
pmem:进程的驻留集大小与机器上物理内存的比率,以百分比表示。(别名PMEM)。