编辑:
这些是迄今为止我遇到的唯一最常用(也是重要)的 ps 命令选项:
$ ps ux, $ ps au, $ ps aux, $ ps U aahan, $ ps uU aahan
那么,这就是全部,还是我遗漏了 1 个或 2 个?$ ps au
有人能告诉我和之间的区别$ ps aux
吗?
答案1
要了解选项组合,您需要了解选项本身。要一睹为快,请尝试ps --help
。要查看每个选项的解释,请参阅ps
手册(man ps
,但这是一个漫长的夜晚的阅读内容)。
在 Linux 中向命令传递选项的方式有多种。这取决于程序,它理解哪种风格。最常见的风格之一是使用单字母选项并使用-
(破折号)传递它们,而选项的顺序通常并不重要(例如ls -a -l
与ls -l -a
--“列表,A-ll 项目使用我-ong 格式”)并且它们可以连接起来使用一个破折号(所以ps -al
orps -la
仍然与上面相同)。
除了单字母选项之外,还有单字母参数,它们需要它们的值,在 的情况下ps -u aahan
意味着“过程你-ser阿罕。 (这是选项分组的例外:此类选项必须是组中的最后一个,以防止误解。)
然后还有像 之类的长选项--help
,有时有明显的含义,有时则没有,但这是另一回事了。
ps
然而,不幸的是,它使用了更多风格的组合:带有破折号(command -o
,我相信它被称为“linux 风格”)或不带有破折号(command o
,我相信它来自 BSD)。这使得常用的ps
命令看起来有点混乱,但是一旦你阅读了ps --help
,你应该能够识别它们。
更令人困惑的是,还有多个版本的ps
. (例如,OSXps
与 Linux 具有不同的选项。)ps
好吧,我ps -A
大多数时候都使用(列出所有进程),这只是因为我还不需要任何其他进程。 (或者,更可能的是我没有知道我需要它们...:D)。
我的建议:了解基本知识,使用它们,如果ps
不能回答您的问题:探索、研究、实验......
答案2
我最常见的是ps xuwww
显示命令的完整宽度。我使用的另一种常见方法是ps xo pid,ppid,cmd
仅显示进程 ID、父进程 ID 和命令字符串。
ps au
你问和之间的区别ps aux
。这些x
选项显示未连接到终端的进程;通常是守护进程或否认的后台进程。当您想要检查守护进程(如 tomcat 或 httpd)的状态或从窗口管理器启动的应用程序(没有与之关联的终端)的状态时,这非常有用。