ps -aux和ps aux有什么区别?我不知道这不仅仅是一个语法和“可移植性”的问题。在Ubuntu中哪一个更适合使用?
尽管有一些类似的问题,我感兴趣的是这个具体的区别。
发布于 2018-04-04 12:32:52
BSD和AT&T开发了不兼容的ps版本。没有领先破折号的选项是BSD风格,而那些领先的破折号是AT&T Unix风格。
ps手册页也有这样的说法:
请注意,"ps -aux“与"ps aux”不同。POSIX和UNIX标准要求"ps -aux“打印名为"x”的用户拥有的所有进程,以及打印由-a选项选择的所有进程。如果名为"x“的用户不存在,此"ps”可能会将命令解释为"ps aux“,并打印警告。此行为旨在帮助转换旧脚本和习惯。它是脆弱的,可能发生变化,因此不应依赖它。
Linux选择了两者都支持。如果您提供不存在的用户,ps -au{user}将出错。请参见:
$ ps -autest
error: user name does not exist
Usage:
ps [options]
Try 'ps --help <simple|list|output|threads|misc|all>'
or 'ps --help <s|l|o|t|m|a>'
for additional help text.
For more details see ps(1).Ubuntu/Canonical选择显示一个错误。Debian选择将相同的输出提供给ps -aux和ps aux。总之,很让人困惑。但如前所述:这将使脚本兼容。你可以用你满意的东西。
https://askubuntu.com/questions/1021903
复制相似问题