gpt4 book ai didi

python - Paramiko scp 从远程机器正则表达式复制

转载 作者:行者123 更新时间:2023-12-02 00:28:41 41 4
gpt4 key购买 nike

有什么方法可以使用 paramiko scp 复制以名称“output”结尾的远程文件。

我有以下代码,只有在我提供完整路径或确切文件名时才会复制

代码如下

 import paramiko
import os
from paramiko import SSHClient
from scp import SCPClient


def createSSHClient(self, server):
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(server, self.port, self.user, self.password)
return client

def get_copy(self, hostname, dst):
ssh = self.createSSHClient(hostname)
scp = SCPClient(ssh.get_transport())
scp.get(dst)
scp.close()

我正在尝试的是

     get_copy(1.1.1.1, "*output")

我收到找不到文件的错误

最佳答案

可能需要先用ssh获取list,然后一个个scp。

类似的内容如下,仅供引用。

def get_copy(self, hostname, dst):
ssh = createSSHClient(hostname)

stdin, stdout, stderr = ssh.exec_command('ls /home/username/*output')
result = stdout.read().split()

scp = SCPClient(ssh.get_transport())
for per_result in result:
scp.get(per_result)
scp.close()
ssh.close()

关于python - Paramiko scp 从远程机器正则表达式复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52809735/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com