Для начала у вас есть http://www.csync.org/, который является своего рода rsync (но так как rsync работает только с SSH, а не с FTP), но для передачи по HTTP / FTP.
Если вам не нравится эта опция, всегда есть "lftp" или "curlftpfs", у stackoverflow есть дочерний сайт, который предоставляет ваш ответ:
https://serverfault.com/questions/24622/how-to-use-rsync-over-ftp
если ЭТО вам ничего не дает, тогда у вас всегда есть ftplib в python:
http://docs.python.org/library/ftplib.html
from ftplib import FTP
ftpretr = FTP('get.ftp.com') # connect to host, default port
ftpretr.login() # user anonymous, passwd anonymous@
ftpretr.retrbinary('RETR README', open('README', 'wb').write)
ftpretr.quit()
ftpsend = FTP('send-to.ftp.com','login','password')
ftpsend.storbinary('STOR todo.txt', open('README','rb'))
ftpsend.quit()
Теперь я не могу помочь вам больше, чем это, не сделав все для вас, и я предполагаю, что вы хотите учиться? используйте sys.argv [] для извлечения файлов ввода / вывода, а также, возможно, для source-host и desition.
Наслаждайтесь! :)