如何通过python或jython建立ssh连接并远程运行脚本?

时间:2011-09-16 07:01:09

标签: python scripting jython

您好我想知道如何通过python或jython建立ssh连接并在另一台机器上远程运行脚本文件。我不确定我想运行脚本的机器平台?请提供一些示例代码。我也不介意去寻找其他一些脚本语言。

3 个答案:

答案 0 :(得分:2)

最简单/最快捷的方法是使用Python的os.system()来调用系统的ssh命令: http://docs.python.org/library/os.html?highlight=system#os.system

E.g。这适用于Ubuntu

import os
os.system('/usr/bin/ssh localhost ls -la /')

在localhost上通过ssh运行'ls -la /'。

您需要为ssh提供正确的命令行选项,并且您可以设置ssh密钥以安全地连接但没有密码到远程主机以执行命令: 检查一下:http://www.g-loaded.eu/2005/11/10/ssh-with-keys/或google以获取有关ssh密钥的更多信息。

答案 1 :(得分:1)

您可能需要查看Fabric

  

Fabric是一个Python库和命令行工具,用于简化   使用SSH进行应用程序部署或系统管理任务。

     

它提供了执行本地或远程的基本操作套件   shell命令(通常或通过sudo)和上传/下载文件,   以及辅助功能,例如提示正在运行的用户   用于输入或中止执行。

答案 2 :(得分:1)

你应该试试execnet,它提供API来在远程机器上执行任意Python代码。我在Linux机器上使用它,但它在Windows和Linux中都可以使用。