Python 在windows中使用子进程的权限被拒绝 导入子流程 ssh=subprocess.Popen(['ssh','-o','BatchMode=yes',],shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE) 打印ssh.stderr.readlines()

Python 在windows中使用子进程的权限被拒绝 导入子流程 ssh=subprocess.Popen(['ssh','-o','BatchMode=yes',],shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE) 打印ssh.stderr.readlines(),python,python-2.7,subprocess,Python,Python 2.7,Subprocess,当我运行上面的代码时,我得到一个错误“权限被拒绝(publickey、gssapi-keyex、gssapi-with-mic、password)。\r\n” 我读到的大多数类似问题都是使用linux,但我使用的是windows。我也使用过paramiko,没有这个权限问题,但我需要使用subprocess来尝试一些我不能用paramiko做的事情。如果你不介意我问的话,你不能用paramiko做什么?(在Linux上,您可能想使用shell=True来解决这个问题,但在Windows上,我在这

当我运行上面的代码时,我得到一个错误“权限被拒绝(publickey、gssapi-keyex、gssapi-with-mic、password)。\r\n”


我读到的大多数类似问题都是使用linux,但我使用的是windows。我也使用过paramiko,没有这个权限问题,但我需要使用subprocess来尝试一些我不能用paramiko做的事情。

如果你不介意我问的话,你不能用paramiko做什么?(在Linux上,您可能想使用
shell=True
来解决这个问题,但在Windows上,我在这方面没有什么帮助;也就是说,我对paramiko和OpenSSH都非常熟悉,很好奇您在寻找什么功能,但找不到)。错误似乎来自
ssh
本身,而不是Python,对吗?这意味着提供给
ssh
的参数中存在错误。可能缺少什么?这是一个在黑暗中拍摄,但基本上我使用paramiko远程配置交换机。每当我将vlan(以及vlan的端口)添加到此交换机时,它会自动禁用,即使交换机上的设置是启用端口。如果在交换机上本地运行相同的命令,则一切正常。我不确定它是否是python脚本和交换机之间的接口。这就是为什么我现在尝试使用subprocess来查看是否是paramiko导致了这个问题。
import subprocess

ssh = subprocess.Popen(['ssh', '-o', 'BatchMode=yes', <myhostname>], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

print ssh.stderr.readlines()