scp

使用加密链接复制文件

字义

secure copy

说明

用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用。

用法

scp [选项][参数]

对象

  • 源文件:指定要复制的源文件。
  • 目标文件:目标文件。格式为user@host:filename(文件名为目标文件的名称)。

参数

-1 #使用ssh协议版本1
-2 #使用ssh协议版本2
-4 #使用ipv4
-6 #使用ipv6
-B #以批处理模式运行
-C #使用压缩
-F #指定ssh配置文件
-i #identity_file 从指定文件中读取传输时使用的密钥文件(例如亚马逊云pem),此参数直接传递给ssh
-l #指定宽带限制
-o #指定使用的ssh选项
-P #指定远程主机的端口号
-p #保留文件的最后修改时间,最后访问时间和权限模式
-q #不显示复制进度
-r #以递归方式复制

相关命令

软件包

scp 命令详解和基本用法,scp 命令语法及参数解读, scp 命令使用方法及实例演示。

实例

  1. 将本地文件传送到远程主机并改名

    用 root 账户把本地文件 /root/a 传送到远程主机 192.168.0.2 的 /root 目录下,并改名为 b

    scp /root/a root@192.168.0.2:/root/b

     

  2. 将本地目录及目录下所有文件及子目录传送到远程主机

    用 root 账户把 /home 目录及该目录下所有到文件和子目录传送到远程主机 192.168.0.2 的 /root 目录下

    scp -r /home root@192.168.0.2:/root

     

  3. 将远程主机上的目录传送到本地主机

    用 root 账户把远程主机 192.168.0.2 上的目录 /home 传送到本地主机 /root 目录下

    scp -r root@192.168.0.2:/home /root