热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

远程调用python_在远程机器上执行程序python

大多数Linuxshell中,可以通过执行一个子shell中运行在不同的工作目录下的命令homeusr(cdusrlocalbin;pwd)usrlocalbi

大多数Linux shell中,可以通过执行一个子shell中运行在不同的工作目录下的命令

/home/usr> (cd /usr/local/bin;pwd)

/usr/local/bin

/home/usr>

您可以通过ssh对远程系统执行相同的操作。根据你使用的ssh客户端,你可能会稍微减少一些。例如,使用paramiko s exec_command,将为每个命令创建一个新的远程shell,因此cd /path/on/remote/machine;./run.sh就足够了。

有关Python 2.X的paramiko甲简约例子是

import sys

import paramiko

try:

hostname, username, password, targetpath = sys.argv[1:5]

except ValueError:

print("Failed, call with hostname username password targetpath")

command = "cd {};pwd".format(targetpath)

print("Command to send: {}".format(command))

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(hostname=hostname, username=username, password=password)

stdin, stdout, stderr = ssh.exec_command("cd {};pwd".format(targetpath))

print(stdout.read())

ssh.close()

python3应该是相似的。还有其他选项,如Python的libssh2绑定,pexpect的ssh支持等等。



推荐阅读
author-avatar
Andg在路上
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有