ps命令 —– 显示进程状态

ps命令是英文单词process的缩写,用于显示当前系统的进程状态。包括进程PID、进程拥有者、系统资源(处理器与内存)使用占比、运行状态等。

ps命令的语法格式如下:

ps [选项]

ps命令的选项很多,可以分类为基础选项、按列选择选项、输出格式选项、线程显示选项和杂项等。通常使用基础选项就可以满足大多数需求,下面只列出一些常用的基础选项和个别其它选项。

选项  含义
-A或者-e 显示所有进程信息
-a 除会话首领进程外,显示所有tty终端进程信息
a 显示所有tty终端进程信息,包括其它用户
-d 除会话首领进程外,显示所有进程信息

r

只显示正在运行的进程
T 显示当前终端的所有进程
x 显示不区分tty终端的进程信息
-f 以完整格式(包括命令行)显示进程信息
-l 以长格式显示进程信息,即详细格式
-p PID 显示指定进程ID值为PID的进程信息
-u <uid> 显示进程拥有者为uid的的进程信息

说明:在ps的选项中,不少选项前面有“-”或没有“-”都能执行,但含义是不一样的,输出内容自然也不一样。比如选项-a和a,-e和e就完全不是一个含义。

实例演示

1、显示系统中全部的进程信息,含详细信息:

[root@node1 ~]# ps -aux
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.2 168876 15484 ?        Ss   3月11   0:05 /usr/lib/systemd/systemd rhgb --switched-root --system --deserialize 18
root           2  0.0  0.0      0     0 ?        S    3月11   0:00 [kthreadd]
root           3  0.0  0.0      0     0 ?        I<   3月11   0:00 [rcu_gp]
……此处省略后续输出……

注:命令【ps aux】也有这个功能,但输出有些微差异。

2、以完整格式输出所有进程信息

[root@node1 ~]# ps -ef
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 3月11 ?       00:00:05 /usr/lib/systemd/systemd rhgb --switched-root --system --deserialize 18
root           2       0  0 3月11 ?       00:00:00 [kthreadd]
root           3       2  0 3月11 ?       00:00:00 [rcu_gp]
……此处省略其它输出……

注:虽然【ps ef】也能执行,但输出的内容就有很多差别了。

3、以完整格式输出UID为zhangsan的进程信息

[zhangsan@node1 ~]$ ps -fu zhangsan
UID          PID    PPID  C STIME TTY          TIME CMD
zhangsan  451102  451101  0 09:39 pts/0    00:00:00 -bash
zhangsan  451199  451102  0 09:39 pts/0    00:00:00 ps -fu zhangsan

4、以长格式显示指定PID的进程信息

[root@node1 ~]# ps -lp 2657
F S   UID     PID    PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S     0    2657       1  0  80   0 - 564073 do_wai ?       00:05:18 dockerd

5、结合管道线,过滤显示满足条件的进程信息

因ps的输出内容较多,实际应用中通常会结合管道线和其它命令,过滤输出满足条件的进程信息。(1)查看所有sshd进程的信息

# 显示所有sshd进程信息
[root@node1 ~]# ps -ef | grep sshd
root        1067       1  0 3月11 ?       00:00:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root      398156    1067  0 3月14 ?       00:00:00 sshd: root [priv]
root      398160  398156  0 3月14 ?       00:00:00 sshd: root@pts/0
root      398165    1067  0 3月14 ?       00:00:00 sshd: root [priv]
root      398179  398165  0 3月14 ?       00:00:00 sshd: root@notty
root      452389  398161  0 09:53 pts/0    00:00:00 grep --color=auto sshd

 (2)按进程的内存使用量(第3列)降序输出

# 按进程内存使用量降序输出
[root@node1 ~]# ps aux | sort -rnk 4
root        2657  0.1  1.2 2256292 96396 ?       Ssl  3月11   5:19 /usr/bin/dockerd --live-restore
root       82251  0.0  0.6 378096 49332 ?        Ssl  3月12   0:04 /usr/bin/python3 -s /usr/sbin/firewalld --nofork --nopid
root        2665  0.1  0.5 1765276 43636 ?       Ssl  3月11   6:33 containerd --config /var/run/docker/containerd/containerd.toml --log-level info

相关推荐

  1. ps命令 —– 显示进程状态

    2024-03-17 00:22:02       47 阅读
  2. Linux 使用PS命令掌握进程管理

    2024-03-17 00:22:02       57 阅读
  3. centos学习- ps命令详解-进程监控的利器

    2024-03-17 00:22:02       35 阅读
  4. Linux 常用命令 - stat 【显示文件状态信息】

    2024-03-17 00:22:02       26 阅读
  5. [Linux] ps命令详解

    2024-03-17 00:22:02       63 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-17 00:22:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-17 00:22:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-17 00:22:02       82 阅读
  4. Python语言-面向对象

    2024-03-17 00:22:02       91 阅读

热门阅读

  1. 由浅到深认识C语言(1):C语言概论

    2024-03-17 00:22:02       43 阅读
  2. app分发步骤有那些?

    2024-03-17 00:22:02       45 阅读
  3. 如何理解闭包

    2024-03-17 00:22:02       47 阅读
  4. 【Unity】旋转的尽头是使用四元数让物体旋转

    2024-03-17 00:22:02       43 阅读
  5. Websocket服务监听收发消息

    2024-03-17 00:22:02       42 阅读
  6. Meson编译工具安装及使用Meson编译DPDK

    2024-03-17 00:22:02       48 阅读
  7. WSL与VirtualBox区别

    2024-03-17 00:22:02       40 阅读
  8. CentOS8安装docker

    2024-03-17 00:22:02       38 阅读
  9. docker部署zabbix使用postgresql数据库

    2024-03-17 00:22:02       43 阅读