Jump to content
Sign in to follow this  

how do I scp a file

Recommended Posts

first of all what is scp ?


here's a quote direct from the top of the command


man scp


SCP(1) BSD General Commands Manual SCP(1)



scp - secure copy (remote file copy program)



scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]

[-l limit] [-o ssh_option] [-P port] [-S program]

[[user@]host1:]file1 [...] [[user@]host2:]file2


it's the same as cp (copy) except secure as you are doing it over an ssh connection. When you start an scp session to a target box, you will be prompted for the users ssh password, this is normal and signifys to you that this is a secure transfer.


here's the usage

scp -prP port file user@ip:./


where port=the ssh listening port on the target linux box

where file=the file you want to send to the target

where user=the username you ssh in as

where ip=the ip address of the target box

where :./=the home directory of the user you are ssh'ing as




-p =Preserves modification times, access times, and modes from the original file.

-P=capital P for port as -p is already taken from above.

-r=recursively copy entire directories.


so a real example of the above would be like


[anyweb@localhost ~]$ scp -prP 1234 SC_160_P_ESD1.zip anyweb@

anyweb@'s password:

SC_160_P_ESD1.zip 100% 29MB 255.2KB/s 01:58


thanks to P38 and jY for the advice.




Share this post

Link to post
Share on other sites

I'd also add that another option is to use the "sftp" command. Essentially a FTP-like interactive shell but utilising SSH.


I find SCP is good for copying one or two files, but SFTP is easier for yanking several at a time (such as an entire directory).


Also check out "rsync" for keeping a mirrored server up to date with its original data.

Share this post

Link to post
Share on other sites

feel free to give us some examples of doing this, i must confess to using the scp method quite a bit but any cli alternative is appreciated :)

Share this post

Link to post
Share on other sites

In its simplest form, use:

sftp remote.host


To use a different username:

sftp fred@remote.host


To use other SSH options, such as specifying a different SSH port number:

sftp -oPort=65422 fred@remote.host
Connecting to remote.host...
fred@remote.host's password:


Once connected, use "help" at the prompt for assistance:

sftp> help
Available commands:
cd path					   Change remote directory to 'path'
lcd path					  Change local directory to 'path'
chgrp grp path				Change group of file 'path' to 'grp'
chmod mode path			   Change permissions of file 'path' to 'mode'
chown own path				Change owner of file 'path' to 'own'
help						  Display this help text
get remote-path [local-path]  Download file
lls [ls-options [path]]	   Display local directory listing
ln oldpath newpath			Symlink remote file
lmkdir path				   Create local directory
lpwd						  Print local working directory
ls [path]					 Display remote directory listing
lumask umask				  Set local umask to 'umask'
mkdir path					Create remote directory
progress					  Toggle display of progress meter
put local-path [remote-path]  Upload file
pwd						   Display remote working directory
exit						  Quit sftp
quit						  Quit sftp
rename oldpath newpath		Rename remote file
rmdir path					Remove remote directory
rm path					   Delete remote file
symlink oldpath newpath	   Symlink remote file
version					   Show SFTP version
!command					  Execute 'command' in local shell
!							 Escape to local shell
?							 Synonym for help

Many FTP commands work in SFTP:


"cd" to change directory on remote host

"lcd" to change local directory (useful if you started the SFTP session in the wrong directory!)

"get myfile" to download that file from remote host to local directory

"put newfile" to upload a local file to the remote host

"mget *.txt" to download all files matching that pattern (shell globbing expression, not regular expression)


Hope that's enough to go on!

Share this post

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Create New...