linux常⽤的scp命令远程服务传输⽂件使⽤例⼦场景:
在使⽤Linux操作系统的过程中,常常需要复制⽂件到本地或者传输⽂件到其他电脑上,这时候⽤到两个命令cp和scp。
cp命令⽤来复制⽂件或者⽬录。scp是secure copy的简写,⽤来在Linux下进⾏加密的远程传输⽂件或者⽬录。
cp和scp是Linux中功能强⼤且常⽤的的命令,下⾯就介绍下cp和scp两个命令的使⽤
说明:
1、本次介绍的 scp 命令的前置条件为本地已经安装了 git 通过git命令窗⼝来执⾏操作
2、在 windows系统的 cmd 命令下操作也可以
3、连接linux服务器语法:ssh ⽤户名@服务器IP
⼀、cp命令
cp命令可以复制⼀个⽂件,可以是单个⽂件复制也可以是整个⽬录复制,命令的使⽤⽅式:
cp [options] source dest
例如: ,就是把复制为⽂件
常⽤的cp命令选项有:
`-r`:拷贝⽬录⽂件,将⽬录下的⽂件依序拷贝到⽬标⽬录中
`-f`:如果⽬标⽂件中已经有相同的⽂件名存在,在复制前先将同名⽂件删除再进⾏复制
`-l`:对源⽂件进⾏硬链接,⽽不复制⽂件
`-u`:源⽂件的Modification Time较⽬的⽂件有更新的时候,才会进⾏复制。
`-v`:输出详细信息
复制⽂件夹的命令:
cp -r test/ test1/
⼆、scp命令
scp命令可以实现本地与远程服务器之间的双向传输,本地⽂件可以传输到远程服务,也可以把远程服务器上的⽂件传输到本地scp常⽤的命令选项:
`-P`:数据传输默认端⼝,默认是22
`-r`:递归拷贝整个⽬录
`-i`:指定密钥⽂件,参数直接传递给ssh使⽤
`-l`:限定⽹速,以Kbit/s为单位
`-C`:允许压缩
`-1,-2`:强制scp命令使⽤ssh1或者ssh2协议
`-4,-6`:使⽤ipv4或者ipv6寻址
下⾯是⽐较常⽤的scp命令使⽤的例⼦
1、本地⽂件传输到远程服务器
root@192.168.1.1:/home/
将⽂件复制到⽬标服务器(192.168.1.1)下的home⽂件夹下
git常用指令2、本地⽂件夹传输到远程服务器
scp -r test root@192.168.1.1:/home/
将test整个⽂件夹复制到⽬标服务器下的home⽂件夹下
3、远程服务器⽂件传输到本地
scp root@192.168.1.1:/ test
将远程服务中home⽬录下的⽂件,复制到本地的test⽬录下
4、远程服务器⽂件夹复制到本地
scp -r root@192.168.1.1:/home/test /Users/jjz
5、scp命令指定密钥⽂件
root@192.168.1.1:/home/ -i ~/.ssh/id_rsa.1
指定了密钥⽂件id_rsa.1做为ssh的连接参数,不使⽤默认的密钥⽂件
语法总结(scp file_source file_target):
拷贝⽂件:
1:拷贝本地⽂件到远程机器上:
scp 本地⽂件名 账号@远程机器IP地址:远程机器⽬录
例:scp /home/test root@192.168.80.80:/home/testdir/
2:拷贝远程机器上的⽂件到本地:
scp 账号@远程机器IP地址:远程机器全路径 本地⽬录
例:scp root@192.168.80.80:/home/testdir/test /home/testdir/
拷贝⽂件夹内⼦⽬录和⽂件:
1:本地拷贝到远程
scp -r 本地⽬录全路径 ⽤户@远程ip地址:⽬录
例:scp -r C:\Users\Administrator\Desktop\test root@47.102.44.6:/test/xxx
说明:
1】如果⽬标⽬录已经存在,就会把整个源⽬录及⼦⽬录⽂件拷贝到⽬标⽬录下
2】如果⽬标⽬录不存在,会创建⽬标⽬录,把源⽬录中的⼦⽬录和⽂件拷贝到⽬标⽬录中
2:远程拷贝到本地
scp -r ⽤户@远程ip地址:⽬录 本地⽬录
例:scp -r root@47.102.44.6:/xxx C:\Users\Administrator\Desktop\test
说明:规则同上
总结:
1】⽬标⽬录就相当于⽂件或⽂件夹的命名⽅式
2】如果指定⽂件名称,以指定名称为准,不指定名称默认以源⽂件名称为准
3】如果指定⽂件夹命名,源⽂件夹中的⼦项会拷贝到指定命名⽂件夹下,不指定⽂件夹命名会把整个源⽬录拷贝到⽬标⽬录下

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。