为何在 ps --help all 跟 man ps 找到的命令不完全一样?

289 天前
 Dffcc

我的环境是 CentOS ,利用 MobaXterm 连接 CentOS 虚拟机,ps --help all ,不管有没有加 all , 都没有 ps axu 的解释,只有 man ps 才会出现,有人知道为什么吗? 还有,举例 docker top mytom -l ,在 docker 中 Top 指令 是否与 ps 指令 相通?

1714 次点击
所在节点    Linux
12 条回复
hexler
289 天前
--help 一般都是包含在二进制里面的,一般就告诉有哪些参数,比较精简,当然也会存在开发漏写写错的情况。
man 查看的手册一般会放在/usr/share/man/下,还可以有不同的语言版本,内容会更多详细一点。

至于你说的 docker top 和 ps ,docker top 是 docker 实现的,ps 和它没啥关联吧....
Dffcc
289 天前
Dffcc
289 天前
@hexler man 里面,包括所有 - -help 的内容吗?
jasei
289 天前
@Dffcc 那必然是包括的,man 是使用手册,最全面的。
GenericT
289 天前
输入参数是二进制自己负责往终端打印,man 是 man 读了对应目录下的文件,再输出给你。内容是什么只取决于写代码的人想输出什么,你打包的时候在 man 里面写 1234 ,help 输出 5678 也是你的自由
viruscamp
289 天前
你的版本是什么?真的没有吗?
$ ps --version
ps from procps-ng 4.0.4
$ ps --help all

Usage:
ps [options]

Basic options:
...
a all with tty, including other users
...
x processes without controlling ttys
...

Output formats:
...
u user-oriented format
...
yazinnnn0
289 天前


~ ps -V
ps from procps-ng 4.0.4

ps 版本太老了?
Dffcc
289 天前
@yazinnnn0

[root@docker ~]# ps --version
procps-ng version 3.3.10
[root@docker ~]#

1. ps 版本是看 CentOS 版本?
2. 为何你可以直接插图片?
zlowly
288 天前
其实 ps --help all 最后一行就是
For more details see ps(1)
告诉你 man 里有更多细节
不带减号的 ps axu 是 BSD 句法格式,而--help 显示是 UNIX 和 GNU ,两者参数很多情况下是不同的。
tomychen
288 天前
有没有一种可能 ps aux 中的 aux 不是一个独立参数而是分别由
a all with tty, including other users
u user-oriented format
x processes without controlling ttys
集合的参数

另外
man 是用户手册的意思
help 是帮助信息

所以更细的解释肯定会在 man 里
viruscamp
288 天前
你大概把 axu 看成一个参数了.

我现场编译一个 procps-ng-3.3.10 也是能看见 a x u 参数的

$ cd procps-ng-3.3.10
$ ./configure
$ make
$ ./ps/pscommand -V
procps-ng version 3.3.10

$ ./ps/pscommand --help all

Usage:
pscommand [options]

Basic options:
...
a all with tty, including other users
...
x processes without controlling ttys

Output formats:
...
u user-oriented format
...
Dffcc
288 天前
@viruscamp

谢谢😊


'a' 选项:當你在 ps 命令中使用 'a' 选项,它將顯示與終端連接( tty )的所有進程,無論它們是否由當前用戶所擁有。
'u' 选项:這個选项會以一种处理过的详细的用户格式输出。它將显示更多的信息,包括进程的用户、CPU 使用率、开始时间等。
'x' 选项: 'x' 选项將显示所有无终端连接的进程。这些通常是后台运行的进程。

将 'a','u' 和 'x' 选项结合起来使用,ps aux 命令將显示系统上的所有进程的详细用户格式的列表。这导致你可以看到系统上所有的进程,无论它们是否由当前用户拥有,无论它们是否与终端连接,也无论它们是在前台运行还是在后台运行。这使得 ps aux 命令成为了在查看系统状态和性能调优时常用的工具之一。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1022652

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX