参数-f对Linux命令'ps'意味着什么?

时间:2018-12-18 06:15:38

标签: linux

ps -f 

使用grep传递管道时,允许我搜索在ps -e中不可见的进程名称

根据手册-f的意思

 Do full-format listing.  This option can be combined with many
 other UNIX-style options to add additional columns.  It also
 causes the command arguments to be printed.

在这种情况下,完整格式的含义是什么?为什么我可以看到在ps -e中不可见的进程名称?

1 个答案:

答案 0 :(得分:1)

ps(1)命令显示“进程状态”。进程具有许多关联的字段(属性),并且ps(1)允许选择应显示的字段。

不幸的是,ps是一个古老的命令,并且使用非常广泛,因此它在不同平台的许多版本中都有所发展,这反映在其命令行用法中:术语和开关(e,-e,f,...)有点(很多)混乱。

全格式,长格式等在某种程度上会引起误解。无论如何,“完整格式”可能意味着,在过去的某个时候,此开关输出了与流程关联的所有相关字段。随着Unix / Linux系统的不断发展,出现了更多的字段,但是出于兼容性考虑,“完整格式”一直未变。因此,最终发明了一个新的术语(“长”格式)来显示与“完整”相比更多(或不同)的字段。

关于与 -e -f 的区别:-e用于 select 进程,而 -f 用于选择要显示的列。两者都应显示CMD列,并带有[启动该过程的命令的名称]。但这还取决于您使用的是哪个系统(unix,bds,linux ...)。

我认为现代ps最有用的功能是允许用户明确选择要显示的每一列的功能。