linux中查询当前状态下进程瞬间的状态信息的命令是ps,而ps命令常用的格式为:ps -ef 和ps aux。
这两个命令差别不大,主要是显示风格不一样。这需要追溯到Unix系统中的两种风格,System V风格和BSD 风格,ps aux最初用到Unix Style中,而ps -ef被用在System V Style中。现在的大部分Linux系统都是可以同时使用这两种方式的。
1.ps -ef
ps -ef命令执行后格式如下:
[test@node1 ~]$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 4月24 ? 00:04:04 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0 0 4月24 ? 00:00:00 [kthreadd]
root 3 2 0 4月24 ? 00:00:46 [ksoftirqd/0]
root 5 2 0 4月24 ? 00:00:00 [kworker/0:0H]
root 8 2 0 4月24 ? 00:00:01 [migration/0]
root 9 2 0 4月24 ? 00:00:00 [rcu_bh]
root 10 2 0 4月24 ? 00:37:41 [rcu_sched]
root 11 2 0 4月24 ? 00:00:00 [lru-add-drain]
主要有8列,每列的说明如下所示:
| 列名 | 含义 |
|---|---|
| UID | 用户ID、但输出的是用户名 |
| PID | 进程的ID |
| PPID | 父进程的ID |
| C | 进程占用CPU的百分比 |
| STIME | 该进程被触发启动时间 |
| TTY | 该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 |
| TIME | 使用掉的CPU时间 |
| CMD | 命令的名称和参数 |
2.ps aux
ps aux命令采用BSD的格式,如下所示:
[test@node1 ~]$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 193576 6644 ? Ss 4月24 4:05 /usr/lib/systemd/systemd --switched-root --system --dese
root 2 0.0 0.0 0 0 ? S 4月24 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 4月24 0:46 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 4月24 0:00 [kworker/0:0H]
root 8 0.0 0.0 0 0 ? S 4月24 0:01 [migration/0]
root 9 0.0 0.0 0 0 ? S 4月24 0:00 [rcu_bh]
root 10 0.2 0.0 0 0 ? S 4月24 37:41 [rcu_sched]
root 11 0.0 0.0 0 0 ? S< 4月24 0:00 [lru-add-drain]
主要有11列,每列的说明如下所示:
| 列名 | 含义 |
|---|---|
| USER | 用户名 |
| PID | 进程id |
| %CPU | 进程占用的CPU百分比 |
| %MEM | 进程占用的内存百分比 |
| VSZ | 该进程使用的虚拟內存量(KB) |
| RSS | 该进程占用的固定內存量(KB)(驻留中页的数量) |
| TTY | 进程的状态 |
| STAT | 进程的状态 |
| START | 该进程被触发启动时间 |
| TIME | 该进程实际使用CPU运行的时间 |
| COMMAND | 命令的名称和参数 |

本文介绍了Linux系统中用于查看当前进程状态的ps命令,重点对比了ps-ef和psaux两个常用格式的差异。ps-ef遵循System V风格,显示包括UID、PID、PPID、C、STIME、TTY、TIME和CMD等8列信息;而psaux采用BSD风格,展示USER、PID、%CPU、%MEM、VSZ、RSS、TTY、STAT、START、TIME和COMMAND等11列内容。这两个命令主要在显示风格和包含信息的详细程度上有所不同,但在大多数现代Linux系统中都可以使用。
1739

被折叠的 条评论
为什么被折叠?



