Fabric 运行 shell 可以在远程 Windows 机器上执行命令吗?

Can Fabric run shell commands on a remote Windows machine?

我在 Linux 系统上使用 Fabric 已经有一段时间了,我从来没有遇到过任何问题。但是,现在我已经扩展到 Windows,但我无法得到任何合作。

我已经在远程 Windows 8.1 系统上安装了 openSSHd,我可以发送非 shell 命令,例如 run('ipconfig', shell=False),它们将按预期 运行,但如果我尝试以下操作。

def runscripts_W():

 env.user = 'tester'
 env.password = 'password'
 env.cwd = 'C:/fabric_upload'  
 run('python runscripts.py')

我刚刚得到Unable to execute command or shell on remote system: Failed to Execute Process

我尝试安装 MinGW 并尝试解决方案 here,但我猜测 Msys/MinGW 无法与 Python 3.5 一起使用,因为即使在编辑 Msys fstab 文件之后python 路径我将返回未找到 python 命令并且降级不是一个选项。

有人在 Windows 上使用过 Fabric 吗?我知道它并不是真正用于 Windows,但它似乎能够连接和发送命令...我只需要让机器启动 python 脚本。这么近又那么远...

好吧,我想我已经玩完了 Fabric 选项。我最终使用 Psexec 在 Windows 机器上启动了 python 脚本。尽管我能够将它们包含在 Fabric 中以用于启动目的。我在通过 Fabric 本地命令启动的 bat 文件中有 Psexec 脚本。这并不理想,但它的工作原理是在我的目录中使用我的 fabfile 增加两个额外的文件;我的 bat 文件和 psexec.exe.

我可以通过 Fabric 为 Windows 做很多工作,但为了我真正需要的东西,这仍然让我很恼火。