Rsync
rsync copies files and directories. It is often used for backups, or duplicating directory contents on a remote server. rsync can copy only changed files, and can use SSH to securely copy the file.
Common Options
-a
- Combo flag, same as -rlptgoD (recursive; copies symlinks; preserve: permissions, modification times, group, and owner; device/special)
-v
- verbose
-n
- do a "dry run". Together with -v, -n shows what rsync will copy, but doesn't actually copy anything
dir
vs dir/
:
dir
- Copy the directory
dir/
- Copy the contents of the directory
Sync Directories on the same computer
rsync -a dir1/ dir2
- Copies the contents of dir1 into dir2
Copy files to a remote system
Specify the directory you want to copy, then the destination.
rsync -a /dir1 username@remote_host:destination_directory
Example:
rsync -a /docs bob@example.com:/home/bob/public_html
- Copies the entire directory "docs" into directory /home/bob/public_html on the server.
You can reverse this to copy from the remote system to the local computer.
Example:
rsync -a bob@example.com:/home/bob/public_html/docs/ /home/bob/web_files/docs