linux 查看进程信息(ps命令)

介绍

ps (英文全拼:process status)命令用于显示 当前 进程 的状态 ,类似于 windows 的任务管理器

参数说明

ps命令的选项比较复杂,可以分为以下3类:

  • BSD风格语法,必须不能以中横线开头;
  • SYSV风格语法,必须仅一个中横线开头;
  • GNU风格语法,必须以两个中横线开头;

所以,有些参数写法不同,但功能类似,是因为使用不同的风格

列出进程 aux

BSD风格语法,看进程占用 CPU / 内存、进程状态

ps aux

执行结果如下:

解释:

  • USER 用户名
  • PID: 进程的ID
  • %CPU 进程占用的CPU百分比
  • %MEM 占用内存的百分比
  • VSZ 该进程使用的虚拟內存量(KB)
  • RSS 该进程占用的固定內存量(KB)(驻留中页的数量)
  • TTY: 该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。
  • STAT 进程的状态
    • D //无法中断的休眠状态(通常 IO 的进程);
    • R //正在运行可中在队列中可过行的;
    • S //处于休眠状态;
    • T //停止或被追踪;
    • W //进入内存交换 (从内核2.6开始无效);
    • X //死掉的进程 (基本很少见);
    • Z //僵尸进程;
    • < //优先级高的进程
    • N //优先级较低的进程
    • L //有些页被锁进内存;
    • s //进程的领导者(在它之下有子进程);
    • l //多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads);
      • //位于后台的进程组;
  • START 该进程被触发启动时间
  • TIME 该进程实际使用CPU运行的时间
  • COMMAND:命令的名称和参数

查找某进程

ps aux | grep nginx

列出进程 -ef

SYSV风格语法,找父进程、进程树关系

ps -ef

执行结果如下:

解释:

  • UID: 用户ID、但输出的是用户名
  • PID: 进程的ID
  • PPID: 父进程ID
  • C: 进程占用CPU的百分比
  • STIME: 进程启动到现在的时间
  • TTY: 该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。
  • CMD: 命令的名称和参数

查找某进程

ps -ef | grep nginx


原文出处:/show_1EF4u4Q6WYSd.html