Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7170196
  • 博文数量: 3857
  • 博客积分: 6409
  • 博客等级: 准将
  • 技术积分: 15948
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-02 16:48
个人简介

迷彩 潜伏 隐蔽 伪装

文章分类

全部博文(3857)

文章存档

2017年(5)

2016年(63)

2015年(927)

2014年(677)

2013年(807)

2012年(1241)

2011年(67)

2010年(7)

2009年(36)

2008年(28)

分类: 系统运维

2015-02-28 21:43:02

使用scp命令在Linux主机间传输文件

[日期:2015-02-28] 来源:Linux社区  作者:doiido [字体:  ]
指令:scp

在不同的Linux主机间复制文件
带有Security的文件copy,基于ssh登录。

有些linux发行版没有自带scp,因此需要安装scp
#  yum -y install openssh-clients

基本语法: 
# scp [参数] source target

常见参数 
-v : 显示进度,可以用来查看连接、认证或是配置错误
-r :  赋值目录
-C :使能压缩选项 
-P :选择端口
-4 : 强行使用 IPV4 地址
-6 : 强行使用 IPV6 地址

常见的使用方式:
1、将本地复制到远程
1.1 # scp local_file remote_username@remote_ip:remote_folder
1.2 # scp local_file remote_username@remote_ip:remote_folder/remote_file
1.3 # scp local_file remote_ip:remote_folder
1.4 # scp local_file remote_ip:remote_folder/remote_file

1.1和1.2指定了用户名,命令执行后需要输入远程服务器的密码
1.3和1.4未指定用户名,命令执行后需要输入远程服务器的用户名以及密码
1.1和1.3仅指定了远程的目录,文件名字不变
1.2和1.4指定了远程的目录以及文件名

例子: 
# scp /doiido/hello.sh linuxidc@192.168.100.2:/doiido
# scp /doiido/hello.sh linuxidc@192.168.100.2:/doiido/newhello.sh
# scp /doiido/hello.sh 192.168.100.2:/doiido
# scp /doiido/hello.sh 192.168.100.2:/doiido/newhello.sh

2、将远程的复制到本地

从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可,由于语法一样,这里就只列出例子; 
# scp linuxidc@192.168.100.2:/doiido /doiido/hello.sh
# scp linuxidc@192.168.100.2:/doiido/hello.sh /doiido/newhello.sh
# scp 192.168.100.2:/doiido  /doiido/hello.sh
# scp 192.168.100.2:/doiido/hello.sh /doiido/newhello.sh

3、复制目录
当需要传输目录的时候,仅需要加上参数-r即可以,例如
# scp -r /doiido/hello/ linuxidc@192.168.100.2:/doiido/

4、注意:
4.1:如果远程服务器修改了ssh端口,scp则需要使用修改后的端口,如远程服务器ssh端口为2222,则需加-P参数:
# scp -p 2222 /doiido/hello.sh linuxidc@192.168.100.2:/doiido

4.2:在使用scp之前,需要确认远程连接的用户是否具有读取远程服务器相应文件的权限。同时还需要注意,执行scp这条指令的用户是否具有本地相应目录的权限。

配置scp在Linux或Unix之间传输文件无需密码  

Linux之cp/scp命令+scp命令详解 

 不能使用scp命令 解决方法 

两台Linux主机之间scp复制文件 

本文永久更新链接地址

阅读(1586) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~