使用Python获取在记事本中打开哪个文件
问题描述:
我想知道文件是否在记事本中打开,文件是否在Adobe Reader上打开。 如果您打开任务管理器,转到进程选项卡,您可以看到包含EXE路径和打开的文件路径的“命令行”列(如果不是,然后转到查看 - >选择列)。 如果我得到这个信息,我可以很容易地解析这个字符串来获得打开的文件名(连同它的路径 - 红利)使用Python获取在记事本中打开哪个文件
我发现了一个article,这表明使用WMI通过PowerShell中的方式。有没有办法使用Python 2.7 我知道有一个WMI库蟒蛇,但无法弄清楚如何实施做同样的:
Get-CimInstance Win32_Process -Filter "name = 'notepad.exe'" | fl *
答
我发现使用psutil
import psutil
for pid in psutil.pids():
p = psutil.Process(pid)
if p.name() == "notepad.exe":
print p.cmdline()
我的方式不知道你的确切用例,但不幸的是,如果你想知道某个特定进程当前打开了哪个文件,只需检查命令行是不够的。例如,可以使用“文件” - >“打开”菜单在不带命令行的记事本中打开文件。 – user193130
@ user193130正确!感谢那些信息。 – Swanand