3

我需要一种基于 paramiko 的文件传输方法,该方法使用不支持SCPSFTP的轻量级SSH2服务器 ( dropbear ) 。有没有办法实现cat和redirect风格的文件传输,比如:

ssh server "cat remote_file" > local_file

paramiko频道?

paramiko.Transport.open_channel() 或 Message() 可以完成这项工作吗?我不确定如何进行。

4

1 回答 1

3

以下内容可用作起点(例如 ./sshpipe 主机“命令”):

#! /usr/bin/env python

import sys
import paramiko

def sshpipe(host, line) :
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(host)
    stdin, stdout, stderr = client.exec_command(line)
    output = stdout.read()
    sys.stdout.write(output)
    stdin.close()
    stdout.close()
    stderr.close()
    client.close()

sshpipe(sys.argv[1], sys.argv[2])
于 2010-01-25T16:43:03.017 回答