UID/GID를 출력의 일부로 표시하기 위해 "ps -Af"에 "-o" 옵션을 추가할 수 있습니까?

UID/GID를 출력의 일부로 표시하기 위해 "ps -Af"에 "-o" 옵션을 추가할 수 있습니까?

ps -f강력한 기본 출력 열 세트를 제공하므로 매우 유용하다고 생각합니다 .

그러나 UID/GID 등을 출력의 일부로 표시하고 싶은 경우도 많습니다. 예를 들어 다음을 사용하여 ps -o출력 열 집합에 출력 열을 추가할 수 있습니까?ps -f

parallels@debian-gnu-linux-vm:~$ ps -Af -o gid,uid | grep sleep
error: conflicting format options

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).

또한 명령을 greping할 때 열 헤더를 놓치지 않도록 grep내장된 것이 있습니까 ?ps

man ps:

-o format
              User-defined format.  format is a single argument in the form of a blank-separated or comma-separated list, which
              offers a way to specify individual output columns.  The recognized keywords are described in the STANDARD FORMAT
              SPECIFIERS section below.  Headers may be renamed (ps -o pid,ruser=RealUser -o comm=Command) as desired.  If all
              column headers are empty (ps -o pid= -o comm=) then the header line will not be output.  Column width will increase as
              needed for wide headers; this may be used to widen up columns such as WCHAN (ps -o pid,wchan=WIDE-WCHAN-COLUMN -o
              comm).  Explicit width control (ps opid,wchan:42,cmd) is offered too.  The behavior of ps -o pid=X,comm=Y varies with
              personality; output may be one column named "X,comm=Y" or two columns named "X" and "Y".  Use multiple -o options when
              in doubt.  Use the PS_FORMAT environment variable to specify a default as desired; DefSysV and DefBSD are macros that
              may be used to choose the default UNIX or BSD columns.

답변1

-O옵션을 사용하여 기본 선택 항목에 열을 추가할 수 있지만 일치하지 않습니다 -f( ps -O uid,gidshow pid, uid, gid, status, tty, time 및 command). (맨페이지에는 "System V" 대 "BSD" 모드에 해당한다고 생각되는 "상태 비저장" 변형이 언급되어 있지만,열 정의-O이는 지원되지 않습니다. )

특정 열 집합을 원할 경우 procps-ngs 를 사용하여 완전히 지정해야 합니다. ps이는 -f(-o uid_hack,pid,ppid,c,stime,tname,time,cmd), 열 뒤에 uid 및 gid를 추가하십시오 uid_hack. 예

$ ps -o uid_hack,uid,gid,pid,ppid,c,stime,tname,time,cmd

procps-ng"매크로"도 지원됩니다. 해당 맨페이지에는 "DefBSD" 및 "DefSysV"가 언급되어 있습니다.다른 정의도 많이 있습니다Std_f, 다음에 대한 설정 포함 -f:

$ ps -o Std_f,uid,gid

ps다양한 검색 기준을 사용하여 출력을 필터링할 수 sleep있습니다 -C.

$ ps -C sleep -o uid_hack,uid,gid,pid,ppid,c,stime,tname,time,cmd

관련 정보