scp命令

命令:scp

不同的Linux之间copy文件常用有3种方法:

1.  ftp,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp-的client程序来进行文件的copy。
2. 采用samba服务,类似Windows文件copy 的方式来操作,比较简洁方便。
3. 利用scp命令来进行文件复制。

命令格式

scp [参数] [原路径] [目标路径]

命令参数

-1  强制scp命令使用协议ssh1  
-2  强制scp命令使用协议ssh2  
-4  强制scp命令只使用IPv4寻址  
-6  强制scp命令只使用IPv6寻址  
-B  使用批处理模式(传输过程中不询问传输口令或短语)  
-C  允许压缩。(将-C标志传递给ssh,从而打开压缩功能)  
-p  保留原文件的修改时间,访问时间和访问权限。  
-q  不显示传输进度条。  
-r  递归复制整个目录。  
-v  详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。   
-c  cipher  以cipher将数据传输进行加密,这个选项将直接传递给ssh。   
-F  ssh_config  指定一个替代的ssh配置文件,此参数直接传递给ssh。  
-i  identity_file  从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。    
-l  limit  限定用户所能使用的带宽,以Kbit/s为单位。     
-o  ssh_option  如果习惯于使用ssh_config(5)中的参数传递方式,   
-P  port  注意是大写的P, port是指定数据传输用到的端口号   
-S  program  指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

实例

第一例子

将当前Linux中的hadoop文件夹拷贝到Hadoop-NN-02下:

解析:  
-P 6000 表示SSH登录端口为6000,默认22端口可省略。  
-r 表示递归复制   
注:从远程复制到本地,只需调换scp后面两个参数即可。   
 
scp -P 6000 -r /home/hadoopuser/hadoop hadoopuser@Hadoop-NN-02:/home/hadoopuser

从本地复制到远程

文件复制  
 
解析:  
local_file 本地文件  
remote_username@remote_ip 远程服务器  
remote_folder 远程目录  
remote_file 远程文件    
 
$scp local_file remote_username@remote_ip:remote_folder  
$scp local_file remote_username@remote_ip:remote_file  
$scp local_file remote_ip:remote_folder  
$scp local_file remote_ip:remote_file  
目录复制 

解析:  
local_folder 本地文件  
remote_username@remote_ip 远程服务器  
remote_folder 远程目录  

$scp -r local_folder remote_username@remote_ip:remote_folder  
$scp -r local_folder remote_ip:remote_folder  

你可能感兴趣的:(scp命令)