Как увидеть (зарегистрировать) прогресс передачи файла с помощью paramiko? - PullRequest
14 голосов
/ 29 ноября 2011

Я использую SFTPClient от Paramiko для передачи файлов между хостами. Я хочу, чтобы мой скрипт печатал ход передачи файла, аналогичный выводу, полученному с помощью scp.

$ scp my_file user@host

user@host password: 

my_file                          100%  816KB 815.8KB/s   00:00

$

Есть идеи?

Заранее спасибо

1 Ответ

22 голосов
/ 29 ноября 2011

Используйте необязательный параметр обратного вызова функции put .Как то так:

def printTotals(transferred, toBeTransferred):
    print "Transferred: {0}\tOut of: {1}".format(transferred, toBeTransferred)

sftp.put("myfile","myRemoteFile",callback=printTotals)
...