因此,我正在尝试编写一个能够连接到远程系统并查询 CIM_DataFile 等的脚本。
为了测试,我写了下面的代码在我的本地机器上测试。我的 C: 驱动器的根目录中有两个文件(ns.txt 和 dns.txt),但是,对于 Name=(这是完整路径)的查询无法正常工作。
import wmi
wmiService = wmi.WMI()
for f in wmiService.CIM_DataFile(Name="c:\ns.txt"):
print "NAME '" + f.Name + "'"
for f in wmiService.CIM_DataFile(Name="c:\dns.txt"):
print "NAME '" + f.Name + "'"
for f in wmiService.CIM_DataFile(FileName="ns", Extension="txt", Drive="c:"):
print "FILENAME '" + f.Name + "'"
for f in wmiService.CIM_DataFile(FileName="dns", Extension="txt", Drive="c:"):
print "FILENAME '" + f.Name + "'"
以上代码的输出为:
NAME 'c:\ns.txt'
FILENAME 'c:\ns.txt'
FILENAME 'c:\dns.txt'
为什么不为 Name= 查询显示 c:\dns.txt?我还对位于系统不同位置的其他文件进行了测试,其中大多数文件不会出现在 Name= 查询中。
最佳答案
在path:Python27\Lib\site-packages里面的file:wmi.py的原因。
我更改了这个文件。
我的问题已经解决了。
事实上,问题出在安装的库上。
关于Python CIM_DataFile 按完整路径搜索文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19983632/