/sftpsync-py

SFTP sync library

Primary LanguagePython

Sync files and directories over SSH.

Update destination files according to the source size and modified time.
Remove destination files and directories if not present at source or excluded (include/exclude parameters).


Example:

    # We synchronize a stock Android phone sdcard mountpoint to our home (assuming a SSH server is running on the device)

    from sftpsync import Sftp

    sftp = Sftp('192.168.1.149', 'root', 'password', port=2222)

    src = '/mnt/sdcard'
    dst = '/home/user/phone-backup/'

    # We don't want to backup everything
    exclude = [r'^Music/', r'^Video/']

    sftp.sync(src, dst, download=True, exclude=exclude, delete=True)


    # We sync a local directory to the phone
    src = '/home/user/data/code/sftpsync-py'
    dst = '/mnt/sdcard/data/'

    sftp.sync(src, dst, download=False, delete=True)
    
    
Install:

        pip install sftpsync

or
        conda install -c mjirik sftpsync