ps aux에서 aux는 무엇을 의미합니까?


161

ps aux모든 프로세스와 상태 및 리소스 사용량 (Linux / BSD / MacOS)을 편리하게 나열하는 것처럼 보이지만을 aux사용하여 매개 변수의 의미를 이해할 수는 없습니다 man ps.

무슨 aux뜻입니까?

답변:


208

a = 모든 사용자에
대한 프로세스 표시 u = 프로세스의 사용자 / 소유자
표시 x = 터미널에 연결되지 않은 프로세스 표시

그건 그렇고, man ps좋은 자원입니다.

역사적으로 BSD와 AT & T는 호환되지 않는 버전을 개발했습니다 ps. 선행 대시가없는 옵션 (질문에 따라)은 BSD 스타일이고 선행 대시가있는 옵션은 AT & T Unix 스타일입니다. 또한 Linux는 두 스타일을 모두 지원하는 버전을 개발 한 다음 이중 대시로 시작하는 옵션이있는 세 번째 스타일을 추가했습니다.

모든 (또는 거의 모든) 비 임베디드 Linux 배포판은 procps 제품군 의 변형을 사용합니다 . 위의 옵션은 procps ps매뉴얼 페이지에 정의되어 있습니다.

의견에서, 당신은 당신이 Apple MacOS (OSX, 나는 추정)를 사용하고 있다고 말합니다. OSX 매뉴얼 페이지 ps여기에 있으며 AT & T 스타일에 대한 지원 만 보여줍니다.


1
@HowardGuo 당신은 -u그냥 반대 가 아니라고 확신 u합니까?
jordanm

2
@HowardGuo GNU (Linux) 버전 ps과 Apple OSX 버전 의 차이점을 반영하여 답변을 업데이트했습니다 . 이 질문은 현재 "Linux"로 태그되었습니다. MacOS에 대해서도 묻는다면 태그를 업데이트 할 수 있습니다.
John1024

1
매우 감사합니다. 방금 Linux에서 ps의 매뉴얼 페이지를 확인했으며에 관한 정보가 있습니다 aux.MacOS 매뉴얼 페이지에는 그러한 정보가 없습니다. 문서 버그 일 수 있습니다.
Howard

2
OSX 매뉴얼 페이지의 "레거시 설명"섹션에서 ps"... ps aux여전히 Tiger에서와 같이 작동합니다"라고 표시되어 있습니다.
dev

3
나는 " man ps맥 OSX에서 좋은 자원 이다"라는 의견에 이의를 제기해야한다 . 맨 페이지는 맨 끝에 만 ps aux편의상 유지되는 메모 이지만, 전에 하이픈없이 옵션을 지정할 수 있다는 힌트는 전혀 없다. 결국, 맨 페이지는 길고 매우 복잡하며 독자는이
스택 교환

15
   a      Lift the BSD-style "only yourself" restriction, which is imposed 
          upon the set of all processes when some BSD-style (without "-") 
          options are used or when the ps personality setting is BSD-like.  
          The set of processes selected in this manner is in addition to the 
          set of processes selected by other means.  An alternate 
          description is that this option causes ps to list all processes 
          with a terminal (tty), or to list all processes when used together 
          with the x option.

   u      Display user-oriented format.

   x      Lift the BSD-style "must have a tty" restriction, which is imposed 
          upon the set of all processes when some BSD-style (without "-") 
          options are used or when the ps personality setting is BSD-like.
          The set of processes selected in this manner is in addition to the 
          set of processes selected by other means.  An alternate 
          description is that this option causes ps to list all processes 
          owned by you (same EUID as ps), or to list all processes when used 
          together with the a option.

$ ps aux | head -10
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  51120  2796 ?        Ss   Dec22   0:09 /usr/lib/systemd/systemd --system --deserialize 22
root         2  0.0  0.0      0     0 ?        S    Dec22   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Dec22   0:04 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   Dec22   0:00 [kworker/0:0H]
root         7  0.0  0.0      0     0 ?        S    Dec22   0:15 [migration/0]
root         8  0.0  0.0      0     0 ?        S    Dec22   0:00 [rcu_bh]
root         9  0.0  0.0      0     0 ?        S    Dec22   2:47 [rcu_sched]
...
saml      3015  0.0  0.0 117756   596 pts/2    Ss   Dec22   0:00 bash
saml      3093  0.9  4.1 1539436 330796 ?      Sl   Dec22  70:16 /usr/lib64/thunderbird/thunderbird
saml      3873  0.0  0.1 1482432 8628 ?        Sl   Dec22   0:02 gvim -f
root      5675  0.0  0.0 124096   412 ?        Ss   Dec22   0:02 /usr/sbin/crond -n
root      5777  0.0  0.0  51132  1068 ?        Ss   Dec22   0:08 /usr/sbin/wpa_supplicant -u -f /var/log/wpa_supplica
saml      5987  0.7  1.5 1237740 119876 ?      Sl   Dec26  14:05 /opt/google/chrome/chrome --type=renderer --lang=en-
root      6115  0.0  0.0      0     0 ?        S    Dec27   0:06 [kworker/0:2]
...

위의 스위치를 사용하면 위와 같은 프로세스와 관련된 출력을 얻을 수 있습니다.

스위치 aux는 다음을 보여줍니다 :

  • 모든 사용자의 프로세스
  • 사용자 지향 방식으로 나열된 프로세스를 사용자 이름별로 표시
  • 터미널에 연결된 프로세스뿐만 아니라 모든 프로세스를 보여줍니다. 여기에는 crond, upowerd 등과 같은 서비스와 같은 프로세스가 포함됩니다.

6

맨 페이지 를 이해하는 열쇠 는 "aux"(첫 번째로 시도한)를 검색하는 것이 아니라 매개 변수의 종류를 설명하는 섹션에 집중하는 것입니다 ps.

이 버전의 ps는 여러 종류의 옵션을 허용합니다.

  1. UNIX 옵션은 그룹화 될 수 있으며 앞에 대시가 와야합니다.
  2. BSD 옵션은 그룹화 될 수 있으며 대시와 함께 사용해서는 안됩니다.
  3. 두 개의 대시가 앞에 오는 GNU 긴 옵션.

이것으로부터, 우리 aux는 (그룹화 된) BSD 옵션 세트 인 a, ux을 통해 약간 더 쉽게 찾을 수 있습니다.

  • ax어떤 프로세스가 선택되고 함께 사용되는지 를 제어하여 모든 프로세스를 선택하도록 명시 적으로 설명됩니다.

  • u "사용자 지향"형식을 사용하여 출력하며, 이는 사용자 ID 및 CPU / 메모리 사용을 포함하여 더 많은 열을 제공합니다.


이에 대한 결론은 프로세스에 대해 "ps aux"스타일 출력을 원하면 aand을 생략 x하고 그냥 수행 하여 얻을 수 있다는 것 ps u $pid입니다.
mwfearnley
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.