어떤 프로세스가 실행 중인지 어떻게 알 수 있습니까?


21

Ubuntu Server 10.10을 사용하고 있으며 어떤 프로세스가 실행되고 있는지 확인하고 싶습니다. PostgreSQL이 내 컴퓨터에서 실행되고 있지만 topor ps명령으로 볼 수 없으므로 실행중인 모든 프로세스가 표시되지 않는다고 가정합니다. 실행중인 모든 프로세스를 표시하거나 다른 매개 변수가 top있거나 사용할 수있는 다른 명령 ps이 있습니까?

답변:


26

로부터 ps매뉴얼 페이지

-e 모든 프로세스를 선택하십시오. -A와 동일

따라서 ps -e모든 프로세스가 표시됩니다. "나에게 모든 것을 줘"에 대한 일반적인 옵션은 ps -ely또는 ps aux입니다. 후자는 BSD 스타일입니다. 종종 사람들 grep은 xenoterracide의 답변에서와 같이 프로세스를 검색하기 위해이 출력을 파이프합니다 . grep출력에서 자체를 보지 않기 위해 종종 다음과 같은 것을 보게됩니다.

 ps -ef | grep [f]oo

여기서 foo는 찾고자하는 프로세스 이름입니다.

그러나 특정 프로세스를 찾고 있다면 사용 pgrep가능한 경우 명령을 사용하는 것이 좋습니다 . 우분투 서버에서 사용할 수 있다고 생각합니다. 사용하면 pgrep위에서 언급 한 경쟁 조건을 피할 수 있습니다. 또한 grep복제 하는 데 점점 더 복잡한 속임수 가 필요한 다른 기능도 제공 합니다. 구문은 간단합니다.

pgrep foo

여기서 foo는 찾고있는 프로세스입니다. 기본적으로 프로세스의 프로세스 ID (PID)를 찾으면 출력합니다. man pgrep다른 출력 옵션을 참조하십시오 . 다음 페이지가 매우 유용하다는 것을 알았습니다.

http://mywiki.wooledge.org/ProcessManagement


나는 ps깃발을 몰라도 사람들의 비율이 얼마인지 궁금 합니다. 난 그냥 aux항상 던져 ; 개별 플래그가 실제로 무엇을 제어하는지 모릅니다
Michael Mrozek

3

당신은 시도 ps aux | grep postgres했습니까? postgres가 실행 중이면 실제로 표시되어야합니다. 그렇지 않은 경우 ... postgres가 실행 중인지 어떻게 알 수 있습니까?

(참고 : 그것은 ps -aux옳지 만 틀린 일반적인 오해입니다. )


고마워, ps aux더 잘 작동했고, 약 70 개의 프로세스를 ps보여 주었지만 두 개만 보여주었습니다. 부팅시 PostgreSQL이 시작되고 종료시 중지 된 것을 확인한 이후 PostgreSQL이 실행되고 있음을 알고 있습니다.
Jonas

@Jonas 일부 초기화 스크립트가 잘못 작성되었습니다. 그들이 무언가가 시작되었다고 말했기 때문에 믿지 마십시오. 몇 가지 조언
xenoterracide

또한 프로세스 목록에서 명령 자체를 pgrep포착하여 ps aux | grep postgres출력 하지 않는 이점도 있습니다.
Michael Mrozek
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.