【发布时间】:2010-09-23 17:41:13
【问题描述】:
有没有一种方法可以在 Windows 上使用 Python 来执行位于远程 Unix 机器上的 shell 脚本?
P.S: 抱歉编辑晚了。我确实知道 Paramiko,但我想知道没有它是否有办法做到这一点。对于初学者,可以用 subprocess() 来完成吗?
【问题讨论】:
-
标准 Python 库中的任何内容都不允许您在 Unix 机器上进行远程执行。您必须使用 SSH 或编写自己的服务器(不要)。如果您不想使用 Paramiko,Twisted 提供了另一种 SSH 实现。不过,无论哪种方式,您都需要使用第三方软件包。
-
你可以避开帕拉米科。正如 Rakis 所建议的,您可以探索 Twisted 中的 ssh 支持。您可以添加证书以避免密码挑战,并且在子进程中,您可以运行常用命令 ssh user@servername 然后后续命令将在服务器上执行。
-
@S. Lott - 你是“Building Skills in Python”一书的作者吗?
-
@Rakis - 你试过 Python 中的 subprocess 包吗?