ps RHEL 6.2 中用户定义的输出

ps RHEL 6.2 中用户定义的输出

我对使用ps.我无法使用或选项ps在 RHEL 6.2 中提供用户定义的输出。最简单的例子,工作在-oops -o pidBASH shell 小提琴

sh-4.2$ ps -o pid                                                                                                                                                                                                                              
 PID                                                                                                                                                                                                                                         
 19                                                                                                                                                                                                                                         
 29                                                                                                                                                                                                                                         

但在 RHEL 6.2 VM 中我只收到错误:

[root@foobar ram]# ps -o pid
ERROR: Conflicting format options.
********* simple selection *********  ********* selection by list *********
-A all processes                      -C by command name
<...more...>

我尝试过在网上找到的其他一些变体,但没有成功。 RHEL 6.2 的特定语法是否存在问题?设置/更改PS_PERSONALITY环境变量会有帮助吗?

答案1

显然你有一个包装器ps——可能是一个别名,可能是一个函数或脚本。检查与type ps.

您的包装器定义了一些格式选项,使其成为ps命令的默认值。ps -o pid要求该默认值 和-o pid,因此来自 的投诉/bin/ps。如果您想绕过此默认设置,您有以下几种选择:

  • 调用/bin/ps而不是普通的ps.
  • 如果包装器是别名,则调用\ps
  • 如果包装器是别名或函数,则调用command ps
  • 将包装器更改为更智能 - 但这意味着解析ps命令行,这不适合胆小的人。
  • 根本不要使用那个包装纸。

相关内容