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

大多数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支持等等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值