用scp这个命令来通过ssh传输文件

时间:2022-05-21 14:25:25

小结:

1. upload files 到 ssh 服务器

localhost $ scp localfile root@172.20.34.**:~/remotepath

2. 从 ssh 服务器download files

localhost $ scp root@172.20.34.**:~/remotepath/filename localpath

下面是别人的文章:

用scp这个命令来通过ssh传输文件。

一、scp是什么?

  scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。

二、scp有什么用?

  1、我们需要获得远程服务器上的某个文件,远程服务器既没有配置ftp服务器,没有开启web服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过scp命令便可轻松的达到目的。

  2、我们需要将本机上的文件上传到远程服务器上,远程服务器没有开启ftp服务器或共享,无法通过常规途径上传是,只需要通过scp命令便可以轻松的达到目的。

 三、scp使用方法

1、从服务器上下载文件

   scp username@servername:/path/filename /var/www/local_dir  #(本地目录)

例如

scp root@192.168.0.101:/var/www/test.txt  # 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)

2、上传本地文件到服务器

scp /path/filename username@servername:/path   

例如

scp /var/www/test.php  root@192.168.0.101:/var/www/  # 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中

3、从服务器下载整个目录

scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)

例如:

scp -r root@192.168.0.101:/var/www/test  /var/www/  

4、上传目录到服务器

scp  -r local_dir username@servername:remote_dir

例如:

scp -r test  root@192.168.0.101:/var/www/   # 把当前目录下的test目录上传到服务器的/var/www/ 目录