我已经有这个问题好几天了,我不知道出了什么问题。
我有一个简单的python脚本,使用在OSX上运行的pexpect,它启动ssh-keygen并自动执行返回来生成一个密钥对,它工作正常。 我想在Windows上做同样的事情。 为了在Windows上获得ssh和ssh-keygen,我安装了OpenSSH for Windows,它使得ssh可以像使用一部分CYGWIN支持文件的正常windows程序一样从cmd提示符运行。 我将相同的脚本移植到windows,并将其视为winpexpect,并使用相应的winspawn启动subprocess,但在第一次提示时停顿。
def generateKeys(self): print "GeneratingKeys..." gen = winpexpect.winspawn("ssh-keygen -t rsa") print gen.expect(":") #This is where it asks for a place to save the keys. retuns 0 if found print "before: " + gen.before print "after: " + gen.after print gen.sendline() #Next it should expect a prompt for a passphrase but it never reaches it print gen.expect(":") print "before: " + gen.before print "after: " + gen.after print gen.sendline()
我得到的输出是这样的:
GeneratingKeys... 0 before: Enter file in which to save the key (/home/user/.ssh/id_rsa) after: : 2 before: Enter file in which to save the key (/home/user/.ssh/id_rsa) after: :
它就在这里,它为所有永恒collecing数字灰尘兔子坐。
如何在特定的日子/时间从hibernate状态中醒来?
unit testingWindows商店应用程序 – MSBuild,MSTest和TeamCity
低级控制台input和redirect
如何检索文件数字签名信息?
我不明白为什么它获得“:”预期的结肠之后。
是否有另一个模块,我可以使用这将允许我与OpenSSH的Windows更好的沟通?
Windows上的Python igraph导入错误
如何在Windows上用Python格式化硬盘?
创build目录并导航到目录c ++
事件日志侦听器 – 应用程序和服务
Windows / C ++:检测窗口之间的焦点变化(全局)
很久以前,我看着winpexpect。 我也无法让它运行,它只是挂起。 一些与不受支持的部分有关的事情,如果我没有记错的话,还有一个不完整的端口。
由于我需要ssh,所以我最终用paramiko取而代之 。 它需要pycrypto,除非你使用预编译的安装程序 ,否则在windows上设置会很痛苦。 对于密钥生成,请参阅文档的这一部分 。 它具有加载和保存密钥。 还要注意丢失的主机键功能。
要快速启动和运行,这里是一个概述 。 请注意,它不会覆盖所有的函数调用,例如为什么他使用AutoAddPolicy() 。 检查文档的优点/缺点和更多的细节。
这是一个fork项目winpexpect :这个版本修复了很多bug。 你可以试一试。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。