2012-06-26 2 views
1

Я хочу что-то, что получит информацию о процессах, например, я получаю команду «ps» в linux,Есть ли способ получить информацию о процессах на локальной машине с помощью python?

получить 2 в основном типа - использование ЦП и используемая память.

сегодня, чтобы получить это, я использую неудобный способ:

subprocess.check_output(["ps", "aux"]) 

........

и разобрать выход из этого ..

любая идея или решение способ приемлемо!

Спасибо!

+0

Взгляните на этот вопрос: http://stackoverflow.com/questions/4842448/getting-processor-information-in-python – Trevor

+2

@Trevor, этот вопрос касается ** процессора ** информации, но этот вопрос есть о ** процессе ** info – TJD

+0

@TJD Упс, непонятый вопрос. – Trevor

ответ

4

Я хотел бы предложить, что вы используете psutil

Типичное использование и пример для процесса:

psUtilInfo - psutil.Process(pid) 
cpuPercentage = int(psUtilInfo.get_cpu_percent()) 
memoryInfo, _vms =psUtilInfo.get_memory_info() 

Чтобы получить все процессы,

psutil.get_pid_list() 

Я думаю, вы также можете получить больше такая информация из этого модуля.

+0

Хороший! не могли бы вы привести мне пример, как итерировать все доступные процессы? – eligro

+1

@eligro: См. Мой отредактированный ответ. Этот модуль действительно хорош – pyfunc

5

Оформить заказ psutil упаковка. Я не знаю, как использовать строго stdlib.

+0

Отлично! Как я пропустил это ... – eligro