- Upload a file to remote server
- Upload file using key
- Download a file from remote server local machine
- Download file using key
- Download directory recursively from remote server
WIP Alert This is a work in progress. Current information is correct but more content will probably be added in the future.
SCP (secure copy) is a very widely used linux command for copying files across machines over the network.
You can upload files from your machine to remote servers and/or download files from remote server to your local machine, using standard SSH authentication.
scp enables your to run
cp (default copy command) to/from a remote machine, the same way
ssh enables you to log in and run a shell on a remote machine.
Upload a file to remote server
$ scp myfile.txt <username>@<ip_or_hostname>:/path/to/directory/on/remote/server
Upload file using key
the colon (
":") at the end is not a typo
$ scp -v -i <identityFileLocation> <fileLocation> <remoteUsername>@<remoteHostOrIP>:
Where all values within
">" should be replaced with your own values;
Example: send a single file using a
$ scp -v -i ~/.ssh/key.pem data.txt email@example.com:
Example: send a directory using a
$ scp -r -v -i ~/.ssh/id_rsa.pub ~/a_directory/ queirozf@a_host:
Download a file from remote server local machine
$ scp queirozf@<host>:foobar.txt /some/local/directory
Download file using key
$ scp -i ~/.ssh/<your_key_name> queirozf@<host>:a_sql_dump.sql ~/backup/
Download directory recursively from remote server
-p is optional; it forces the downloaded files to keep the same "last-modified-timestamps" as the original files.
$ scp -rp <username>@<host>:/path/to/remote/directory/ /path/to/local/target