$ ps -l -o ruid,euid,rgid,egid,sess -p $$
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).
$ ps -F -o ruid,euid,rgid,egid,sess -p $$
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
$ ps -w -o ruid,euid,rgid,egid,sess -p $$
RUID EUID RGID EGID SESS
1000 1000 1000 1000 5678
어떤 서식 옵션이 서로 충돌하는지 궁금합니다.
이러한 오류를 피하려면 어떻게 해야 합니까?
동일한 오류 없이 세 번째 명령이 성공하는 이유는 무엇입니까?
단지 현재 프로세스에 대한 추가 정보를 표시하고 싶기 때문에 를 -Fl
통해 지정된 일부 필드를 사용하여 작업합니다 -o
.
감사해요.
답변1
이는 문서에서 명확하지 않지만 -o
대부분의 다른 형식 지정자와 충돌합니다.즉출력을 위해 선택되는 열을 결정하는 옵션(Unix 스타일에서는 , -F
, -j
; -l
그러나 -f
및 -M
,다음에 추가선택 항목에 나열되어야 하며 -o
)와 충돌하지 않아야 합니다. 그 이유는 열 목록을 명시적으로 지정하면 미리 정의된 형식도 사용할 수 없기 때문인 것 같습니다.
-w
-o
형식 제어가 아니라 출력 제어이므로 사용할 수 있습니다 . 선택한 열의 출력을 수정합니다.
유용 할 수도 있습니다 -O
. 유사하게 동작 -o
하지만 미리 정의된 일부 열(프로세스 식별자, 상태, TTY, 실행 시간 및 명령줄)을 추가합니다.