scp secure cop

scp secure cop

scp:安全复制 (远程文件复制程序)

请看《SSH 教程 - 阮一峰》下的《scp 命令》

当我们在 Linux 系统之间传输文件的时候,用 U 盘拷贝当然可以,但是这样太慢了,我们可以直接通过 scp 命令远程复制。scp 在网络中的主机间进行文件复制。它用 ssh 来传输及验证数据,提供与 ssh 相同的安全保护,在 scp 命令中需要包含主机名和用户名,用来指定从/向该主机复制此文件。

scp [-pqrvBC1246] [-F ssh_config] [-S program] [-P port] [-c cipher] [-i identity_file] [-l limit] [-o ssh_option] [[user@]host1:]file1 [...] [[user@]host2:]file2

常用功能参数

简单实践:

从服务器下载文件

scp username@servername:/path/filename /tmp/local_destination

例如

scp [email protected]:/home/kimi/test.txt /tmp/local_destination:把 192.168.0.101 上的 /home/kimi/test.txt 下载到 /tmp/local_destination

可以使用通配符匹配多个文件

scp [email protected]:/opt/data/* /tmp/local_destination

上传本地文件到服务器

scp /path/local_filename username@servername:/path

例如 scp /var/www/test.php  [email protected]:/var/www/:把本机 /var/www/ 目录下的 test.php 文件上传到 192.168.0.101 这台服务器上的 /var/www/ 目录中

从服务器下载整个目录

scp -r username@servername:remote_dir/ /tmp/local_dir

例如:scp -r [email protected] /home/kimi/test  /tmp/local_dir

上传目录到服务器

scp  -r /tmp/local_dir username@servername:remote_dir

例如:scp -r test   [email protected]:/var/www/ 把当前目录下的 test 目录上传到服务器的 /var/www/ 目录

因为使用 ssh 连接,所以有可能无法建立 ssh 连接,没关系,输入 yes 继续传输即可,然后输入目标服务器密码即可开始传输。