Copy a Directory Recursively using SCP

I often need to quickly copy a directory from one Linux machine to another. An easy command to accomplish the task is the SCP (Secure Copy) command.

Here’s the general format of a recursive copy.

scp -r [/local/path/] [user@host]:[/remote/path]
The -r switch causes scp to copy recursively. It copies all files and directories under the one specified.

scp -rp sourcedirectory user@dest:/path
-r means recursive
-p preserves modification times, access times, and modes from the original file.

You can also use the rsync command to copy files in a similar manner. rsync has a few more options and the advantage that it only copies changed files.

rsync -a [/local/path/] [user@host]:[remote/path/]