I love rynsc <3 It can copy locally as well over remote shell’s. GO rsync! Here is my current favorite configuration:
rsync --recursive --times --perms --links --progress --append --rsh=ssh SOURCE DESTINATION
- –recursive =~ recurse into directories
- –times =~ preserve modification times
- –perms =~ causes the receiving rsync to set the destination permissions to be the same as the source permissions.
- –links =~ duplicate all symlinks.
- –progress =~ tells rsync to print information showing the progress of the transfer.
- –append =~ causes rsync to update a file by appending data onto the end of the file, which presumes that the data that already exists on the receiving side is identical with the start of the file on the sending side.
- –rsh=ssh =~ specify the remote shell to use.
Put it in your .bashrc (invoked with the command cpr)
echo "alias cpr='rsync --recursive --times --perms --links --progress --append --rsh=ssh'" | tee -a $HOME/.bashrc && source $HOME/.bashrc
Let me know if you have any of your own rsync tips and tricks!