rsync is used to transfer and synchronise files between different systems. It can be efficient by only transferring parts of the files that differ.
Useful options
-r, –recursive
recurse into directories
–remove-source-files
sender removes synchronized files (non-dirs)
This will leave empty directories on the source side.
–progress
show progress during transfer
This option shows transfer rates, percent complete for the current file, and how many items remain to be transferred.
-c, –checksum
skip based on checksum, not mod-time & size