python--我们可以使用psutil找到正在运行的进程的目录吗?

标签 python

我只想杀死所有从特定目录运行的正在运行的“python”进程。意味着文件(sample.py)驻留在特定文件夹中。

For ex: C:\myFolder\* 

使用psutil我们可以找到进程的路径或杀死所有来自C:\myFolder\*的进程,除了一些进程之外吗?

 import psutil
 for process in psutil.process_iter():
    print process.cmdline:

最佳答案

根据评论,如果您想查找正在运行的 python 脚本的文件位置 - 使用 psutil.Process.name() == 'python' 来过滤 python 进程。然后使用 os.path.abspath() 获取完整路径。

以下代码示例可能有效:

import psutil
import os

"""
Python script path using psutil
"""

processes = filter(lambda p: psutil.Process(p).name() == "python", psutil.pids())

scripts = []
paths = []
for pid in processes:
    try:
        scripts.append(psutil.Process(pid).cmdline()[1])
    except IndexError:
    pass

for script in scripts:
    paths.append(os.path.abspath(script))

print paths

关于python--我们可以使用psutil找到正在运行的进程的目录吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42763204/

相关文章:

Python getopt 未设置正确的值

c++ - UTF-8 编码错误,需要帮助转换文本

python - 使用 Google App Engine 每天运行一个基本的 python 脚本

python - 如何使用 Rabbyt 进行像素完美碰撞检测?

python - 注释与 python 中的字符串相比

python - 如何在 Python 中正确写入 FIFO?

python - 从字符串中提取日期和时间信息。

python - 在buildroot中添加一个pypi python包

python - 从 API 获取 header

python - 如何使用别名在 Django 中进行多表连接