这个问题已经在这里有一个答案:
我的工作需要其所有正在运行的进程的PID列表中选择一个项目。我通过Python编程语言的希望。如何获得呢?谢谢进阶
如果你是在Linux上只使用subprocess.Popen
产卵ps - ef
命令,然后从中获取第二列。下面是例子。
import subprocess as sb
proc_list = sb.Popen("ps -ef | awk '{print $2} ' ", stdout=sb.PIPE).communicate()[0].splitlines()
for pid in proc_list:
print(pid)
如果你想保持平台独立使用psutil.pids()
,然后遍历的PID。你可以阅读更多关于它here,它有一堆的例子这表明你很可能试图实现。
希望这可以帮助。
请原谅任何错字如果有的话,我只是张贴这从移动设备。
如果你想与PID和进程名的字典,你可以使用下面的代码:
import psutil
dict_pids = {
p.info["pid"]: p.info["name"]
for p in psutil.process_iter(attrs=["pid", "name"])
}