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@linuxcool ~]# scp anaconda-ks.cfg 192.168.10.10:/root  

将指定远程主机中的某个文件复制到本地家目录中:

[root@linuxcool ~]# scp 192.168.10.10:/root/anaconda-ks.cfg /root

将某个本地目录复制到指定的远程主机的指定目录中:

[root@linuxcool ~]# scp -r Documents 192.168.10.10:/root

将指定远程主机中的某个目录复制到本地家目录中:

[root@linuxcool ~]# scp -r 192.168.10.10:/root/Documents /root

将某个本地文件复制到指定的远程主机的指定目录中,指定要使用的传输用户身份,并保留原始文件的权限属性。

[root@linuxcool ~]# scp -p anaconda-ks.cfg linuxprobe@192.168.10.10:/root
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。