概述

ps 命令可以查看当前系统的进程状态。psprocess status 的缩写。

在这里插入图片描述

语法

该命令的语法如下:

ps [参数] [选项]

该命令支持的选项有:

选项说明
a列出带有终端的所有用户的进程
x列出当前用户的所有进程,包括没有终端的进程
u面向用户友好的显示风格
-e列出所有进程
-u列出某个用户关联的所有进程
-f显示完整格式的进程列表

注:该命令的选项非常多,这里只是列出常用的选项。ps 命令最常用的两种情况是:ps auxps -ef

使用

注:ps 命令知道如下两种用法就可以了,不必过多关注那么多的选项。

查询所有进程【★★★★★】

查询所有进程有两种使用方式:

ps aux
# 或
ps -ef

关于 ps aux 显示信息说明如下:

  • USER:该进程是由哪个用户产生的。
  • PID:进程的 ID 号。
  • %CPU:该进程占用 CPU 资源的百分比,占用越高,进程越- 耗费资源。
  • %MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源。
  • VSZ:该进程占用虚拟内存的大小,单位 KB。
  • RSS:该进程占用实际物理内存的大小,单位 KB。
  • TTY:该进程是在哪个终端中运行的。对于 CentOS 来说,tty1 是图形化终端,tty2-tty6 是本地的字符界面终端。pts/0-255 代表虚拟终端。
  • STAT:进程状态。常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示。
  • START:该进程的启动时间。
  • TIME:该进程占用 CPU 的运算时间,注意不是系统时间。
  • COMMAND:产生此进程的命令名。

在这里插入图片描述

关于 ps -ef 命令显示的信息说明如下:

  • UID:用户 ID。
  • PID:进程 ID。
  • PPID:父进程 ID。
  • C:CPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算,执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高。
  • STIME:进程启动的时间。
  • TTY:完整的终端名称。
  • TIME:CPU 时间。
  • CMD:启动进程所用的命令和参数。

在这里插入图片描述

注:如果想要查看进程的 CPU 占用率和内存占用率,可以使用 ps aux;如果想要查看进程的父进程 ID 则可以使用 ps -ef

查找指定进程信息【★★★★★】

通常查找全部进程并不是我们所需要的,我们有时候只需要查找指定进程的信息即可,那么就需要用到管道符 |grep 命令了。格式如下:

# 语法
ps aux | grep 指定进程名称
ps -ef | grep 指定进程名称
# 示例,查找 ssh 进程的信息
ps aux | grep "ssh"

在这里插入图片描述

Logo

华为云1024程序员节送福利,参与活动赢单人4000元礼包,更有热门技术干货免费学习

更多推荐