Python subprocess.Popen不适用于reg查询命令
当我尝试在python中查询注册表值(REG query HKU/v“VBAWarnings”/s)popen()时,我得到了0个匹配项Python subprocess.Popen不适用于reg查询命令,python,subprocess,registry,Python,Subprocess,Registry,当我尝试在python中查询注册表值(REG query HKU/v“VBAWarnings”/s)popen()时,我得到了0个匹配项 import subprocess command = 'REG QUERY HKU /v "VBAWarnings" /s' output,error = subprocess.Popen(command,universal_newlines=True,shell=True,stdout=subprocess.PIPE,stderr=subprocess.P
import subprocess
command = 'REG QUERY HKU /v "VBAWarnings" /s'
output,error = subprocess.Popen(command,universal_newlines=True,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE).communicate()
print output
End of search: 0 match(es) found.
如果我打印输出,它将输出为0个匹配项
import subprocess
command = 'REG QUERY HKU /v "VBAWarnings" /s'
output,error = subprocess.Popen(command,universal_newlines=True,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE).communicate()
print output
End of search: 0 match(es) found.
但同一命令在命令提示符下执行时提供匹配
输出:
HKEY_USERS\S-1-5-21-2149410145-3230408028-977776915-
500\Software\Microsoft\Office\12.0\Word\Security
VBAWarnings REG_DWORD 0x1
End of search: 1 match(es) found.
您可以尝试类似于
proc=subprocess.Popen(command,stdout=subprocess.PIPE,bufsize=1,stderr=subprocess.PIPE)的方法打印proc.communicate()
从命令提示符执行命令时打印出什么?另外,您是否也检查了error
(因为命令输出可能在那里)?为什么不使用?@Varad仍然不工作,我认为这不是参数的问题,命令字符串可能有问题,因为指挥部也是如此prompt@PeterWood我想在没有Pythonca的远程机器上执行该命令。您可以尝试执行类似于proc=subprocess.Popen(command,stdout=subprocess.PIPE,bufsize=1,stderr=subprocess.PIPE)的命令print proc.communicate()
从命令提示符执行时,该命令会打印出什么?另外,您是否也检查了error
(因为命令输出可能在那里)?为什么不使用?@Varad仍然不工作,我认为这不是params的问题,命令字符串可能有问题,因为在command中同样工作prompt@PeterWood我想在没有python的远程机器上执行该命令