Python是一种高级编程语言,完全可以用来监控主机进程。Python提供了一个叫做psutil的扩展库,可以在Windows,Linux和MacOS上监控进程。
import psutil # 获取所有进程 for proc in psutil.process_iter(): try: pinfo = proc.as_dict(attrs=['pid', 'name', 'cpu_percent']) except psutil.NoSuchProcess: pass else: print(pinfo)
上述代码可以获取当前所有进程的ID,名称和CPU占用率。
import psutil
# 根据进程名称获取对应进程
def find_process_by_name(name):
for proc in psutil.process_iter():
if proc.name() == name:
return proc
return None
# 根据进程ID获取对应进程
def find_process_by_pid(pid):
try:
proc = psutil.Process(pid)
return proc
except psutil.NoSuchProcess:
return None
# 获取进程的信息
def get_process_info(proc):
pinfo = proc.as_dict(attrs=['pid', 'name', 'status', 'cpu_percent', 'memory_percent'])
pinfo['mem_info'] = proc.memory_info()._asdict()
return pinfo
# 测试代码
p = find_process_by_name('chrome.exe')
if p is not None:
print(get_process_info(p))上述代码可以根据进程名称或进程ID获取对应进程的详细信息,包括进程状态,CPU占用率和内存占用情况。
通过psutil这个扩展库,我们可以非常方便地监控主机的进程,从而及时发现并解决问题。
本文可能转载于网络公开资源,如果侵犯您的权益,请联系我们删除。
0
