scp recursive copy local to remote code example

Example 1: bash How To Transfer Files From a Remote Server to another Remote Server

# Basic syntax:
scp source destination

# Note, usually one or both of "source" and "destination" are remote 
# 	(otherwise you'd just use cp for a local copy)
# To specify a local source or destination, just use the directory path
# To specify a remote destination, the format is:
# [email protected]:/path/to/directory

# Example usage:
scp /Users/name/Downloads/*.txt [email protected]:/path/to/directory
# In this example, you'd be uploading all text files from your downloads 
# to the remote server

scp [email protected]:/path/to/directory/*png /Users/name/Downloads
# In this example, you'd be downloading all png files from the remote
# server to your downloads directory

scp [email protected]:/path/to/directory/my_favorite_file.txt [email protected]:/path/to/directory
# In this example, you'd be moving a file from one remote server to 
# another remote server

scp -r [email protected]:/path/to/directory /Users/name/Downloads
# In this example the -r flag is used to state that this is a recursive
# download, meaning that all files and subdirectories in the directory
# will be downloaded to the local Downloads directory

Example 2: scp folder from server to local

scp -r [email protected]:/path/to/foo /home/user/Desktop/