Linux ps命令用于显示当前进程 (process) 的状态。
命令参数:
-a 显示同一终端下的所有程序
-A 显示所有进程
-c 显示进程的真实名称
-N 反向选择
-e 等于“-A”
-e 显示环境变量
-f 显示程序间的关系
-H 显示树状结构
-r 显示当前终端的进程
-T 显示当前终端的所有程序
-u 指定用户的所有进程
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
-C<命令> 列出指定命令的状况
--lines<行数> 每页显示的行数
--width<字符数> 每页显示的字符数
--help 显示帮助信息
--version 显示版本显示
常用的几个:
1.-aux 显示所有包含其他使用者的行程
(python3) [root@izwz9gql1520750fswaastz ~]# ps -aux | grep uwsgi
root 11167 0.0 0.0 112644 968 pts/0 R+ 17:46 0:00 grep --color=auto uwsgi
root 13621 0.0 0.3 185284 6960 ? S Jun12 0:57 uwsgi uwsgi.ini
root 13622 0.1 2.2 377032 42624 ? Sl Jun12 38:30 uwsgi uwsgi.ini
root 13623 0.1 2.2 376580 42520 ? Sl Jun12 38:15 uwsgi uwsgi.ini
root 13624 0.1 2.3 377620 43736 ? Sl Jun12 38:22 uwsgi uwsgi.ini
root 13625 0.1 2.3 376736 43428 ? Sl Jun12 38:13 uwsgi uwsgi.ini
##显示当前所有进程状态:
USER:该进程属于那个使用者账号。
PID :该进程的进程ID号。
%CPU:该进程使用掉的 CPU 资源百分比;
%MEM:该进程所占用的物理内存百分比;
VSZ :该进程使用掉的虚拟内存量 (Kbytes)
RSS :该进程占用的固定的内存量 (Kbytes)
TTY :该进程是在那个终端机上面运作,若与终端机无关,则显示 ?。另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
STAT:该程序目前的状态,主要的状态有:
1. R :该程序目前正在运作,或者是可被运作
2. S :该程序目前正在睡眠当中,但可被某些讯号(signal) 唤醒
3. T :该程序目前正在侦测或者是停止了
4. Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
5. D :无法中断的休眠状态(通常 IO 的进程)
6. W :进入内存交换 (从内核2.6开始无效)
7. X :死掉的进程 (基本很少见)
8. < :优先级高的进程
9. N :优先级较低的进程
10.L :有些页被锁进内存
11.s : 进程的领导者(在它之下有子进程)
12. l :多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads)
13. + :位于后台的进程组;
START:该进程被触发启动的时间;
TIME :该进程实际使用 CPU 运作的时间。
COMMAND:该程序的实际指令。
2.根据内存使用来升序排序
[root@izwz9gql1520750fswaastz ~]# ps -aux --sort -pmem | less
3.cpu升序 内存倒序,并通过管道显示前10个结果
ps -aux --sort -pcpu,+pmem | head -n 10