🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## scp命令和执行过程分析 * scp是基于ssh的安全拷贝命令(security copy),它是从古老的远程复制命令rcp改变而来,实现的是在host与host之间的拷贝,可以是本地到远程的、本地到本地的,甚至可以远程到远程复制。注意,scp可能会询问密码。 * 如果scp拷贝的源文件在目标位置上已经存在时(文件同名),scp会替换已存在目标文件中的内容,但保持其inode号。 如果scp拷贝的源文件在目标位置上不存在,则会在目标位置上创建一个空文件,然后将源文件中的内容填充进去。 > scp \[-12BCpqrv\] \[-l limit\] \[-o ssh\_option\] \[-P port\] \[\[user@\]host1:\]file1 ... \[\[user@\]host2:\]file2 > > 选项说明: > > \-1:使用ssh v1版本,这是默认使用协议版本 > > \-2:使用ssh v2版本 > > \-C:拷贝时先压缩,节省带宽 > > \-l limit:限制拷贝速度,Kbit/s. > > \-o ssh\_option:指定ssh连接时的特殊选项,一般用不上。偶尔在连接过程中等待提示输入密码较慢时,可以设置GSSAPIAuthentication为no > > \-P port:指定目标主机上ssh端口,大写的字母P,默认是22端口 > > \-p:拷贝时保持源文件的mtime,atime,owner,group,privileges > > \-r:递归拷贝,用于拷贝目录。注意,scp拷贝遇到链接文件时,会拷贝链接的源文件内容填充到目标文件中(scp的本质就是填充而非拷贝) > > \-v:输出详细信息,可以用来调试或查看scp的详细过程,分析scp的机制