"ps" 명령의 어떤 플래그가 Unix 플래그 형식을 위한 것이고 어떤 플래그가 BSD 플래그 형식을 위한 것입니까?

"ps" 명령의 어떤 플래그가 Unix 플래그 형식을 위한 것이고 어떤 플래그가 BSD 플래그 형식을 위한 것입니까?

ps명령은 두 가지 형식으로 플래그를 사용할 수 있습니다.

  • 플래그 앞에 대시를 붙여야 하는 Unix 형식입니다.
  • 플래그 앞에 대시를 붙여서는 안 되는 BSD 형식입니다.

나는 훑어보았다.맨페이지Unix 플래그 형식에 대한 플래그와 BSD 플래그 형식에 대한 플래그를 확인하는 명령을 사용했지만 ps아무것도 찾지 못했습니다.


편집하다:이것은 중복이 아닙니다. 다른 질문에서는 Unix 및 BSD 플래그 형식에 대한 플래그가 다른지 묻고 있습니다. 반면 이 질문에서는 Unix 플래그 형식에 대한 플래그가 무엇인지, BSD 플래그에 대한 플래그가 무엇인지 묻고 있습니다. 체재.

답변1

그만큼맨페이지옵션을 스타일별로 그룹화하지 않고 기능별로 그룹화합니다. 옵션이 표시되는 방식을 보면 스타일을 구분할 수 있습니다.

  • aBSD 옵션은 앞에 대시( , g, T, r, x...) 없이 나열됩니다 .
  • POSIX 옵션은 단일 대시( -A, -a, -d, -e, -N...)로 표시됩니다.
  • GNU 긴 옵션은 두 개의 대시( --deselect...)와 함께 나열됩니다.

Kusalananda가 제안한 것처럼 POSIX 옵션만 사용하고 다른 사람의 ps.

답변2

POSIX 표준ps유틸리티를 설명합니다.다음과 같은 개요를 가지고 있습니다:

ps [-aA] [-defl] [-g grouplist] [-G grouplist]
   [-n namelist] [-o format]... [-p proclist] [-t termlist]
   [-u userlist] [-U userlist]

에 대한 "UNIX 옵션"과 "BSD 옵션"에 대해 분명히 약간의 혼란이 있고 psOpenBSD, NetBSD, FreeBSD 및 macOS 중 ​​어느 것도 에 대한 매뉴얼에 "BSD 옵션"(대시 없는 플래그)을 나열하지 않기 때문에 ps아마도 그것들에 대해서는 잊어버리고 UNIX 역사에서 닫힌 장의 일부로 보는 것이 더 낫습니까?

POSIX 이론적 근거 섹션에서는 psSystem V 기반 Unices와 BSD 기반 Unices의 구현 ps(및 플래그를 표준화한 방식에 대한 추론)과 관련하여 비호환성이 있다고 말하고 있지만 대시 없는 내용은 언급하지 않습니다. 플래그.

참고로:

답변3

PS는 세 가지 유형의 사용 구문 스타일을 지원합니다.

  • 그룹화할 수 있고 앞에 대시가 와야 하는 UNIX 스타일 - 예:ps -aux
  • 그룹화할 수 있고 대시와 함께 사용할 수 없는 BSD 스타일 - 예:ps aux
  • 두 개의 대시가 앞에 오는 GNU 긴 옵션(예:ps --aux

관련 정보