via: https://wangchujiang.com/linux-command/c/ps.html
```shell ps ax # PID TTY STAT TIME COMMAND # 1 ? Sl 0:00 /init # 10 ? Ss 0:00 /init # 11 ? S 0:00 /init # 12 pts/0 Ss 0:00 -zsh # 476 pts/0 R+ 0:00 ps ax ``` - 1 字段 - `PID` / 进程 ID - 当你想在另一个命令中引用这个进程时,比如说要杀死它,这是关键的 - 2 字段 - `TT` - 进程所使用的终端 ID - 3 字段 - `STAT` 进程的状态 - `I` 代表闲置的进程(睡眠时间超过约 20 秒) - `R` 代表可运行的进程 - `S` 代表睡眠时间少于 20 秒的进程 - `T` 代表已停止的进程 - `U` 代表处于不间断等待中的进程 - `Z` 代表已死亡的进程(*zombie*,即僵尸进程) - 如果出现一个以上的字母,那么第二个字母代表进一步的、可能非常有技术性的信息。 - 常见的是 `+` ,它代表相应进程在终端中处于前台。而 `s` 代表相应进程是一个 [会话领头进程(session leader)](https://unix.stackexchange.com/questions/18166/what-are-session-leaders-in-ps). - 4 字段 - `TIME` 则告诉我们进程已经运行了多长时间。 - Cases - 列出所有用户的进程, 不显示终端发起的进程 ```shell ps axww ``` - `a` 参数用来同时列出其他用户的进程 - `x` 显示那些未与终端相连的进程(不是由用户通过终端发起的)。 - soft-wrap 我们需要输入 `w` 两次来应用这个设置