scp命令来自于英文词组“secure copy”的缩写,其功能是用于基于SSH协议远程拷贝文件。scp命令可以在多台Linux系统之间复制文件或目录 ,有些类似于cp命令的功能,但复制的范围却不是本地,而是网络上另一台主机。
由于是基于SSH协议进行的复制操作,全部数据都是加密的,因此会比HTTP和FTP更加安全。
语法格式:scp 参数 文件
常用参数:
-1 | 使用ssh协议版本1-2 |
-2 | 使用ssh协议版本2 |
-4 | 使用ipv4 |
-6 | 使用ipv6 |
-B | 以批处理模式运行 |
-C | 使用压缩 |
-F | 指定ssh配置文件 |
-l | 指定宽带限制 |
-o | 指定使用的ssh选项 |
-P | 指定远程主机的端口号 |
-p | 保留文件的修改时间,访问时间和权限模式 |
-q | 不显示复制进度 |
-r | 以递归方式复制 |
参考实例
将某个本地文件复制到指定的远程主机的指定目录中:
[root@jiloc ~]# scp anaconda-ks.cfg 192.168.10.10:/root
将指定远程主机中的某个文件复制到本地家目录中:
[root@jiloc ~]# scp 192.168.10.10:/root/anaconda-ks.cfg /root
将某个本地目录复制到指定的远程主机的指定目录中:
[root@jiloc ~]# scp -r Documents 192.168.10.10:/root
将指定远程主机中的某个目录复制到本地家目录中:
[root@jiloc ~]# scp -r 192.168.10.10:/root/Documents /root
将某个本地文件复制到指定的远程主机的指定目录中,指定要使用的传输用户身份,并保留原始文件的权限属性。
[root@jiloc ~]# scp -p anaconda-ks.cfg linuxprobe@192.168.10.10:/root