14.linux命令ps

发布时间 2023-08-22 18:02:13作者: CodeMagicianT

14.linux命令ps

1.ps aux

对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程, 而ps命令(Process Status)就是最基本同时也是非常强大的进程查看命令。

使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等等.总之大部分信息都是可以通过执行该命令得到的。

ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。

如果直接用ps命令,会显示所有进程的状态,通常结合grep命令查看某进程的状态。

grep (global search regular expression(RE) and print out the,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

ps aux输出格式:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

█实例

  • 查看所有进程
[root@localhost ~]# ps -aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.1 191412  4400 ?        Ss   19:03   0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2  0.0  0.0      0     0 ?        S    19:03   0:00 [kthreadd]
root          4  0.0  0.0      0     0 ?        S<   19:03   0:00 [kworker/0:0H]
root          6  0.0  0.0      0     0 ?        S    19:03   0:00 [ksoftirqd/0]
root          7  0.0  0.0      0     0 ?        S    19:03   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    19:03   0:00 [rcu_bh]
root          9  0.0  0.0      0     0 ?        S    19:03   0:00 [rcu_sched]
root         10  0.0  0.0      0     0 ?        S<   19:03   0:00 [lru-add-drain]

  • 查找指定进程
[root@localhost ~]# ps -aux | grep tail
tom        3869  0.0  0.0 108304   680 pts/2    S+   20:10   0:00 tail
root       3872  0.0  0.0 112824   980 pts/1    R+   20:10   0:00 grep --color=auto tail

2.ps ajx

Linux系统中查看父进程ID,进程ID,进程组ID,会话ID的方法

[ycxie@localhost Workspace]$ ps ajx
   PPID     PID    PGID     SID TTY        TPGID STAT   UID   TIME COMMAND
        0         1           1        1 ?                   -1 Ss           0   0:02 /usr/lib/systemd/systemd --switched-root --system -
        0         2           0        0 ?                   -1 S             0   0:00 [kthreadd]
        2         3           0        0 ?                   -1 I<           0   0:00 [rcu_gp]
        2         4           0        0 ?                   -1 I<           0   0:00 [rcu_par_gp]
        2         6           0        0 ?                   -1 I<           0   0:00 [kworker/0:0H-events_highpri]
        2         9           0        0 ?                   -1 I<           0   0:00 [mm_percpu_wq]
        2       10           0        0 ?                   -1 S             0   0:00 [ksoftirqd/0]
        2       11           0        0 ?                   -1 I              0   0:00 [rcu_sched]
        2       12           0        0 ?                   -1 S             0   0:00 [migration/0]
        2       13           0        0 ?                   -1 S             0   0:00 [cpuhp/0]
        2       14           0        0 ?                   -1 S             0   0:00 [cpuhp/1]
        2       15           0        0 ?                   -1 S             0   0:00 [migration/1]
        2       16           0        0 ?                   -1 S             0   0:00 [ksoftirqd/1]
        2       18           0        0 ?                   -1 I<            0   0:00 [kworker/1:0H-kblockd]
        2       19           0        0 ?                   -1 S             0   0:00 [cpuhp/2]
        2       20           0        0 ?                   -1 S              0   0:00 [migration/2]

3.ps -ef

  • 命令解释
列出全部进程的全部信息
  • ps -ef 的输出格式
UID         PID   PPID  C STIME TTY          TIME CMD
  • 参数解释

○UID:进程所属的用户ID
○PID:进程的进程号ID
○PPID:进程的父ID(启动此进程的其它进程)
○C:此进程的CPU占用率(百分比)
○STIME:进程的启动时间
○TTY:启动此进程的终端序号,如显示?,表示非终端启动
○TIME:进程占用CPU的时间
○CMD:进程对应的名称或启动路径或启动命令

  • 实例

○查看进程

[root@localhost ~]# ps -ef
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 19:03 ?        00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2      0  0 19:03 ?        00:00:00 [kthreadd]
root          4      2  0 19:03 ?        00:00:00 [kworker/0:0H]
root          6      2  0 19:03 ?        00:00:00 [ksoftirqd/0]
root          7      2  0 19:03 ?        00:00:00 [migration/0]
root          8      2  0 19:03 ?        00:00:00 [rcu_bh]
root          9      2  0 19:03 ?        00:00:00 [rcu_sched]
root         10      2  0 19:03 ?        00:00:00 [lru-add-drain]

○查找指定进程

[root@localhost ~]# ps -ef | grep tail
tom        3955   3827  0 20:18 pts/2    00:00:00 tail
root       4010   3960  0 20:19 pts/3    00:00:00 tail
root       4042   3065  0 20:21 pts/1    00:00:00 grep --color=auto tail


参考资料:

参考资料:

Linux中ps命令ps -aux 和ps -ef 参数解释