日期:2014-05-16  浏览次数:20663 次

两台linux文件拷贝
scp就是secure copy,是用来进行远程文件拷贝的.数据传输使用ssh1,并且和ssh1使用相同的认证方式,提供相同的安全保证.与rcp不同的是,scp会要求你输入密码如果需要的话.
最简单的应用如下:
Java代码

   1. scp 本地用户名@IP地址:文件名1 远程用户名@IP地址:文件名2 

scp 本地用户名@IP地址:文件名1 远程用户名@IP地址:文件名2


[本地用户名@IP地址:] 可以不输入,可能需要输入远程用户名所对应的密码.

可能有用的几个参数:
Java代码

   1. -v 和大多数linux命令中的-v意思一样,用来显示进度.可以用来查看连接,认证,或是配置错误. 
   2. -C 使能压缩选项. 
   3. -P 选择端口.注意-p已经被rcp使用. 
   4. -4 强行使用IPV4地址. 
   5. -6 强行使用IPV6地址. 

-v 和大多数linux命令中的-v意思一样,用来显示进度.可以用来查看连接,认证,或是配置错误.
-C 使能压缩选项.
-P 选择端口.注意-p已经被rcp使用.
-4 强行使用IPV4地址.
-6 强行使用IPV6地址.



拷贝单个文件命令:
Java代码

   1. scp file username@ip:filepath 
   2. 说明: 
   3. file: 要拷贝的文件名 
   4. username: 远程登录的用户名, 
   5. ip:远程服务器ip 
   6. filepath:远程文件路径 
   7. 拷贝文件夹命令如下(多加上一个-r 参数即可): 
   8. scp -r file username@ip:filepath 

scp file username@ip:filepath
说明:
file: 要拷贝的文件名
username: 远程登录的用户名,
ip:远程服务器ip
filepath:远程文件路径
拷贝文件夹命令如下(多加上一个-r 参数即可):
scp -r file username@ip:filepath




不同的Linux之间copy文件常用有3种方法:
第一种是在其中一台Linux安装ftp Server,这样可以在另外一台使用ftp的client程序来进行copy。
第二种方法就是采用samba服务,类似Windows文件copy的方式来操作,比较简洁方便
第三种就是利用scp命令来进行文件复制。
scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。
Java代码

   1. scp /home/1.gif root@172.19.2.75:/home/root 

scp /home/1.gif root@172.19.2.75:/home/root


然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始cp和ungzip了
如果想反过来操作,把文件从远程主机copy到当前系统,也很简单:
Java代码

   1. scp root@172.19.2.75:/home/abc.gif /home/root 

scp root@172.19.2.75:/home/abc.gif /home/root


复制文件夹的格式是
Java代码

   1. scp -r root@192.168.1.1:/home/ /本地目录