Answers:
a =显示所有用户
的进程u =显示进程的用户/所有者
x =还显示未连接到终端的进程
顺便说一句,man ps
是很好的资源。
过去,BSD和AT&T开发了不兼容的ps
。没有前划线(根据问题)的选项是BSD样式,而有前划线的选项是AT&T Unix样式。最重要的是,Linux开发了一个同时支持两种样式的版本,然后在其中添加了以双破折号开头的选项的第三种样式。
所有(或几乎所有)非嵌入式Linux发行版都使用procps套件的变体。以上选项是在procps ps
手册页中定义的。
在评论中,您说您正在使用Apple MacOS(我想是OSX)。对于OSX手册页ps
是在这里,它仅显示AT&T样式的支持。
ps
与Apple OSX版本之间的差异。这个问题目前被标记为“ Linux”。如果您还询问MacOS,则可能要更新标签。
aux
,MacOS的手册页没有此类信息,这可能是文档错误。
ps
的确ps aux
在“旧版说明”部分下显示“ ... 仍然像在Tiger中一样工作”。
man ps
在Mac OSX上是很好的资源。”手册页仅在最后指出,这样做ps aux
是为了方便起见,但绝对没有暗示可能在不带连字符的情况下指定选项最后,手册页很长而且很复杂,读者可以花很多时间去质疑自己的理智,然后放弃并谷歌搜索这个
a Lift the BSD-style "only yourself" restriction, which is imposed
upon the set of all processes when some BSD-style (without "-")
options are used or when the ps personality setting is BSD-like.
The set of processes selected in this manner is in addition to the
set of processes selected by other means. An alternate
description is that this option causes ps to list all processes
with a terminal (tty), or to list all processes when used together
with the x option.
u Display user-oriented format.
x Lift the BSD-style "must have a tty" restriction, which is imposed
upon the set of all processes when some BSD-style (without "-")
options are used or when the ps personality setting is BSD-like.
The set of processes selected in this manner is in addition to the
set of processes selected by other means. An alternate
description is that this option causes ps to list all processes
owned by you (same EUID as ps), or to list all processes when used
together with the a option.
$ ps aux | head -10
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 51120 2796 ? Ss Dec22 0:09 /usr/lib/systemd/systemd --system --deserialize 22
root 2 0.0 0.0 0 0 ? S Dec22 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S Dec22 0:04 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< Dec22 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S Dec22 0:15 [migration/0]
root 8 0.0 0.0 0 0 ? S Dec22 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S Dec22 2:47 [rcu_sched]
...
saml 3015 0.0 0.0 117756 596 pts/2 Ss Dec22 0:00 bash
saml 3093 0.9 4.1 1539436 330796 ? Sl Dec22 70:16 /usr/lib64/thunderbird/thunderbird
saml 3873 0.0 0.1 1482432 8628 ? Sl Dec22 0:02 gvim -f
root 5675 0.0 0.0 124096 412 ? Ss Dec22 0:02 /usr/sbin/crond -n
root 5777 0.0 0.0 51132 1068 ? Ss Dec22 0:08 /usr/sbin/wpa_supplicant -u -f /var/log/wpa_supplica
saml 5987 0.7 1.5 1237740 119876 ? Sl Dec26 14:05 /opt/google/chrome/chrome --type=renderer --lang=en-
root 6115 0.0 0.0 0 0 ? S Dec27 0:06 [kworker/0:2]
...
使用上述开关,您将获得有关上述过程的输出。
开关aux
将显示:
理解联机帮助页的关键不是搜索“ aux”(我首先尝试过),而是专注于描述参数种类的部分ps
:
此版本的ps接受几种选择:
- UNIX选项,可以分组,并且必须在破折号之前。
- BSD选项,可以分组,并且不能带破折号。
- GNU长选项,前面带有两个破折号。
由此,我们知道这aux
是一组(分组的)BSD选项a
,u
和x
,这使它们的查找稍微容易一些。
a
x
明确描述了选择和控制哪些进程并一起使用以选择所有进程。
u
输出使用“面向用户”格式,该格式提供更多列,包括用户ID和CPU /内存使用情况。
a
and x
,然后执行来获得它ps u $pid
。
-u
只是正义u
吗?