Получить список файлов с помощью следующего скрипта.Затем выполните итерацию по списку с помощью ftp.get
import paramiko
import os
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('localhost',username='****')
apath = '/var/log'
apattern = '"*.log"'
rawcommand = 'find {path} -name {pattern}'
command = rawcommand.format(path=apath, pattern=apattern)
stdin, stdout, stderr = ssh.exec_command(command)
filelist = stdout.read().splitlines()
ftp = ssh.open_sftp()
for afile in filelist:
(head, filename) = os.path.split(afile)
print(filename)
ftp.get(afile, './'+filename)
ftp.close()
ssh.close()
. Это то, что предложил dustyprogrammer: На удаленном сервере вы применяете команды оболочки для получения списка файлов.Затем вы обрабатываете список с помощью Python.
Чтобы загрузить, вы должны создать новый путь к файлу для каждого файла - загрузка в каталог, как вы предложили, не работает (для меня).