python - 使用 python 在任务管理器中杀死 matlab 进程

标签 python matlab process

时不时地,我会遇到这样的问题: 我的 python 脚本调用 matlab,运行模拟并关闭 matlab。有时,matlab 无法正确关闭。 然后,我运行构建 Visual studio dll/lib 的批处理脚本,不幸的是,它被 matlab 阻止了。

有没有办法使用 python 查找 Matlab 的进程 ID,然后杀死它。
然后我可以将其添加到 python 脚本的末尾以安全地关闭 matlab。
谢谢
塞迪

最佳答案

要终止名称中包含“matlab”的所有进程,您可以使用

import os
import psutil

allMatlabIds = [p.pid for p in psutil.process_iter() if "matlab" in str(p.name)]
MatlabIdsToKill = [x for x in allMatlabIds if x != os.getpid()]
for MatlabId in MatlabIdsToKill:
    os.kill(MatlabId, signal.SIGINT)

关于python - 使用 python 在任务管理器中杀死 matlab 进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33572789/

相关文章:

python - 将 timedelta 转换为 int

python - 是否可以在 Google App Engine 中使用 PyMongo?

matlab - 在 MATLAB 中解析文件的最简单方法

c - 为什么这个使用 fork 和共享内存的 C 程序的输出是这样的?

c - 父子进程计时

python - 使用Django添加用户时自动生成用户名

将邻接矩阵转换为距离或跳跃矩阵

matlab - 快速傅里叶在matlab中检测钢琴频率

node.js - 为什么不能向 fork 子流程发送多于消息(字符串)的内容?

python - 在 Pandas 数据框上应用列表