我正在用Python编写一些监控脚本,并试图找到最干净的方法来获取任意随机运行的程序的进程ID (给定该程序的名称
就像这样
ps -ef | grep MyProgram
我可以解析它的输出,但是我认为在python中可能有更好的方法。
发布于 2010-09-21 23:58:28
试试pgrep
。它的输出格式要简单得多,因此更容易解析。
发布于 2010-09-21 23:07:14
os.getpid()
发布于 2010-09-21 23:48:38
如果你不局限于标准库,我喜欢psutil。
例如,要查找所有"python“进程:
>>> import psutil
>>> [p.info for p in psutil.process_iter(attrs=['pid', 'name']) if 'python' in p.info['name']]
[{'name': 'python3', 'pid': 21947},
{'name': 'python', 'pid': 23835}]
https://stackoverflow.com/questions/3761639
复制相似问题