프로세스를 실행하고 얼마나 많은 메모리를 사용하는지 확인하는 방법은 무엇입니까? [복사]

프로세스를 실행하고 얼마나 많은 메모리를 사용하는지 확인하는 방법은 무엇입니까? [복사]

나는 종종 time프로세스에 걸리는 시간을 알아내기 위해 이것을 사용합니다. 동등한 메모리 명령이 있습니까? 프로세스가 차지하는 메모리 양( ps, 등) 을 알아내는 일반적인 방법은 장기 실행 프로세스에 적합하지만 명령줄에서 실행되는 명령처럼 작동하는 /proc/meminfo방법은 모르겠습니다 . time스택과 힙을 포함하는 것을 제외하고는 "크기"와 같은 것을 상상하고 있습니다.

% mem python myscript.py
   text    data    heap 
3135006  570928  115528

답변1

다음이 도움이 될 수 있습니다.

var=$(pgrep process_name_here);
top -b -p "$var" | awk -v var=$var '$1~var{print $10}'

스크립트를 작성하고 프로세스 이름을 매개변수로 전달하는 것을 고려할 수도 있습니다.

노트:이 솔루션~하지 않을 것이다이는 top 명령의 기본 레이아웃을 변경하는 경우 작동합니다. 이 경우 $10을 적절한 필드 번호로 바꿔야 합니다.

관련 정보