scp命令 Scp -r命令
SCP详解
SCP(Secure Copy)
SCP是一种在本地主机和远程主机之间加密复制文件的方法。
详细说明
SCP命令是Linux系统中用于远程拷贝文件的命令。与仅限于本机拷贝的cp命令不同,SCP传输文件是加密的,这确保了数据传输的安全性。虽然加密过程可能会略微影响传输速度,但在安全性至上的情况下,这种牺牲是值得的。
当服务器硬盘变为只读系统时,您可以使用SCP将文件移出。SCP是一个非常轻量级的命令,几乎不会增加系统负荷。在这方面,它远胜于rsync等工具。
尽管rsync在某些情况下(如大量小文件传输)可能会比SCP稍快一些,但当处理大量小文件时,rsync可能会导致硬盘I/O非常高,而SCP基本不会影响系统的正常使用。
语法
scp(选项)(参数)
选项详解
-1:使用ssh协议版本1;
-2:选择使用ssh协议版本2;
-4:指定使用IPv4地址进行传输;
-6:指定使用IPv6地址进行传输;
-B:以批处理模式执行命令;
-C:在传输过程中使用压缩功能;
-F:指定ssh配置文件路径;
-i:指定身份验证密钥文件路径,例如Amazon云服务的pem文件;
-l:设定带宽限制;
-o:设置特定的ssh选项;
-P:设定远程主机的SSH端口号;
-p:保持文件属性,如修改时间、访问时间和权限模式不变;
-q:静默模式,不显示复制进度;
-r:递归复制,用于复制目录。
参数解释
- 源文件:指定要复制的源文件。
- 目标文件:目标文件的路径和名称,格式为"user@host:filename"。
实例操作
从远程复制文件到本地的操作与从本地复制到远程的操作相似,只需交换两个参数的顺序即可。
例如,从远处复制文件到本地目录的操作如下:
scp .10.10:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/
此命令将从IP地址为10.10.10.10的远程机器上复制nginx-0.5.38.tar.gz文件到本地的/opt/soft/目录中。
再如,从云服务器复制Open到本地目录的操作如下:
scp -i amon.pem .10.10:/usr/local/openvpn_as/etc/exe/open-connect-2.1.3.110.dmg open-connect-2.1.3.110.dmg
此命令将从IP地址为10.10.10.10的远程机器上下载open安装文件到本地当前目录。
其他操作如从远处复制到本地、上传本地文件到远程机器、上传本地目录到远程机器等,均按照相应参数和选项进行操作。