Ps命令
功能:用于显示当前系统正在运行的进程动态信息。
参数:
-A:列出所有进程(等价于-e)
-a:显示当前终端运行的所有进程。
e:列出程序时,显示每个程序所是用户的环境变量
u:以用户为主的格式显示程序状况
x:显示所有进程,不以终端机来区分
l:长格式输出
-o:控制输出
输出格式:
USER:用户名
PID:进程ID
UID:用户ID
PPID:父进程的进程ID
SID:会话ID
%CPU:进程的cpu占用率
%MEM:进程的内存占用率
VSZ:进程所使用的虚拟内存的大小
RSS:进程使用的时即内存大小
TTY:与进程关联的终端
STAT:进程的状态
START:进程运营的总cpu时间
TIME:进程运行了多长时间
COMMAND:正在执行的命令行命令
NI:优先级
PRI:进程优先级编号
WCHAN:进程正在睡眠的内核参数名称
FLAGS:进程的数字标识
进程状态详解:
R:正在运行或者在运行队列中等待
S:休眠中,在等待某个条件的形成或接受到信号
Z:僵死,进程已经终止,但进程描述符存在,直到父进程调用wait4()系统调用后释放
D:收到信号不唤醒和不可运行,金翅鸟儿该必须等待直到由中断发生
T:终止,进程收到SIGSTOP,SIGSTP,SIGTIN,SIGTOU信号后停止运行
W:没有足够的记忆体分页可分配
X:死进程
<:高优先级的进程
N:低优先级的进程
L:内存锁页,表示由记忆体分页分配并缩在记忆体内
s:进程的领导者(在它之下由子进程)
l:多进程
+:位于后台的进程组
- ps -aux与ps aux的区别
ps -aux意为打印用户名为“x”的用户的所有进程,以及打印所有将由-a选项选择的进程。如果用户“x”不存在,将会被编辑器解释为“ps aux”,并且会打印一个警告。当运行“ps -aux >/dev/null”,会显示以下警告信息;
Warning: bad syntax, perhaps a bogus ‘-‘? See /usr/share/doc/procps-3.2.8/FAQ
所以,最好直接使用“ps aux”命令。
- ps aux 与ps -ef
aux会截断command列,而-ef不会,当结合grep时就会影响结果。
- ps -u 用户
显示指定用户的进程
- 排序显示
ps -aux --sort -pmem | head -n 10
- ps -C 进程名
显示指定的进程
- ps -L PID
根据pid显示指定的进程
- pstree
显示进程树