추가 읽기

추가 읽기

ps과 에 나열된 프로세스의 차이점은 무엇입니까 ps -A?

답변1

이 없으면 -Aps는 현재 세션에 속한 프로세스만 인쇄합니다. "절대적으로 모든 것"이라고 생각하십시오. 관련 메모에서 -a동일한 작업을 수행하지만 세션 소유자(사용자 이름)로 제한합니다.

답변2

GNU ps명령은 심각한 다중인격 장애를 앓고 있습니다. 따라서 매뉴얼 페이지가 혼란스러운 것은 당연합니다. 아마도 BSD 매뉴얼을 살펴보는 것이 도움이 될 것입니다. 결국 이 질문은~이다태그됨.

BSD의 작동은 ps다음 두 가지 사항을 염두에 두면 매우 간단합니다.

  • 두 가지 기본 필터를 사용하여 표시할 프로세스를 선택합니다. 그 필터는~에기본적으로 명령줄 옵션으로 이를 설정합니다.끄다. 따라서 장식되지 않은 일반은 ps두 가지를 모두 통해 필터링됩니다.
  • BSD 구문은 먼 길을 거슬러 올라갑니다. 현대 BSD에서는 getopt접두사에 마이너스 기호가 붙은 옵션 규칙을 사용하고 있지만 여기에 관련된 옵션과 동작은 30년 전과 거의 동일합니다.

그 행동은 이렇습니다.

  • -a(역사적으로 a) 옵션끄다모든 "선택기" 필터링.
    • 다양한 기타 명령줄 옵션은 선택기를 지정합니다. -UUID로 선택, -t터미널 이름 제어로 선택, -p프로세스 ID로 선택 등. 이들 모두는 에 의해 우회됩니다 -a.
    • 선택자가 명시적으로 제공되지 않으면기본 선택기을 호출한 사용자와 동일한 유효 UID로 실행 중인 프로세스만 표시하는 것입니다 ps. 이 기본 선택기는 이 옵션이 꺼지는 기록 필터입니다.
  • -x(역사적으로 x) 옵션끄다ps제어 터미널이 있는 프로세스만 표시 하도록 제한합니다 .

역사적으로 BSD에는 선택권이 ps없었습니다 A. 그러나 최신 BSD는 (나중에) 단일 UNIX 사양과의 호환성을 위해 -A로도 사용할 수 있는 옵션을 구현합니다. 이는 두 가지를 모두 사용하는 것과 동일하며 두 가지 제한 사항을 모두 끄고 모든 프로세스가 포함된 제한 사항을 필터링되지 않은 상태로 둡니다.A-A-a-x

OpenBSD와 NetBSD는 -A옵션을 문서화하고 있으며 NetBSD의 경우 명시적으로 -a -x. FreeBSD는 그렇지 않지만 소스 코드의 주석에는 의도적으로 문서화되지 않은 SUSv5 호환성 옵션으로 존재한다고 명시되어 있습니다.

추가 읽기

  • ps1983-04-13. 4.2BSD 매뉴얼 페이지.
  • psOpenBSD 매뉴얼 페이지.
  • ps2009-10-22. NetBSD 매뉴얼 페이지.
  • ps2014-08-07. FreeBSD 매뉴얼 페이지.

관련 정보