Rsync
Rsync is an open-source file synchronizing tool that provides incremental file transfer. It can be used over insecure and secure transports (like SSH). It is available on most Unix-based systems (such as macOS and Linux) and Windows. There are also GUI-based tools that use rsync, for example, Acrosync.
A basic command looks like this:
bash
rsync [-options] SOURCE user@x.x.x.x:DESTINATION
-optionsis a dash followed by one or more letters, for example-vfor verbose error messages, and-bto make backups. See the full list of options at the rsync man page. (Search for "Options summary.")SOURCEis the path to the local file or directory that you want to copy or synchronizeuser@is the credentials of the user on the remote server you want to copy files over to.x.x.x.xis the IP address of the remote server.DESTINATIONis the path to the location you want to copy your directory or files to on the remote server.
You can also make a connection over SSH using the -e option as shown:
bash
rsync [-options] -e "ssh [SSH DETAILS GO HERE]" SOURCE user@x.x.x.x:DESTINATION
There are numerous examples on the Internet, including those at the official website, and at the Wikipedia entry for rsync.