简介

scp就是secure copy,是用来进行远程文件拷贝的。数据传输使用ssh1,并且和ssh1使用相同的认证方式,提供相同的安全保证。

scp只要通过sshd服务进行通讯,而且要求两端都有scp这个命令。


用法

scp [-pqrvBC1246] [-F ssh_config] [-S program] [-P port] [-c cipher] [-i identity_file]

[-l limit] [-o ssh_option] [[user@]host1:]file1 [...] [[user@]host2:]file2


常用方式

复制一个文件到远程主机

scp file 192.168.1.100:/tmp/

如果不指定用户名, 默认是跟当前的用户名是一样,如果是需要制定用户直接是root@192.168.1.100;端口默认是ssh_config配置的端口(默认是22),如果IP后面不加路径,默认就是用户的家目录。

复制一个文件夹

scp -r dir1 192.168.1.100:/tmp/

复制目录需要添加一个-r参数,来递归复制。

注意:这里的目录中的软链接,如果是目录打软链接,会被当成正常的目录,复制所有打文件到远程,导致软链接都消失了。

拷贝多个文件或者目录

scp -r dir1 dir2 file1 file2 192.168.1.100:/tmp/

只要把目标放到最后,中间的文件目录都会被拷贝到远程的/tmp目录。

限速拷贝

scp -l 102400 -r dir 192.168.1.100:/tmp

-l 参数的单位是:Kbit/s,限速可以防止拷贝文件占用带宽,导致正常的服务出现异常。

自定义端口

scp -l 102400 -r -P 2222 dir root@192.168.1.100:/tmp 

为了安全一点,有些ssh服务不使用默认端口了,这时候拷贝文件就需要指定端口,用-P这个参数(是大写的P)

指定密钥

scp -i /data/id_rsa -r dir root@192.168.1.100:/tmp 

有些情况,是直接使用密钥进行验证的,如果不是本机默认打key,需要使用-i指定一下密钥打路径。

指定ssh_config配置文件

scp -F /data/ssh_config -r dir root@192.168.1.100:/tmp 

scp调用的是ssh_config,有时候,我们自定义打一些参数,比如自动接受key之类的参数,又不想影响系统本身自带的配置。这时候就需要-F制定一下ssh客户端的配置。默认加载的是/etc/ssh/ssh_config


总结

scp使用起来简单方便,但是对于软链接的处理不是很人性化。可以先使用tar打包,然后再进行拷贝。

tar zcvf file.tar.gz dir1 file scp file.tar.gz 192.168.1.100:/tmp/

linux c语言文件拷贝_linux - scp命令远程文件拷贝相关推荐

  1. Linux命令scp用于远程文件的拷贝(上传和下载)

    3_Linux命令scp用于远程文件的拷贝(上传和下载) 文章目录 1.SCP简介 2.SCP使用 2.1.命令格式: 2.2.命令功能: 2.3.命令参数: 3.使用实例: 如何将本地文件通过终端上 ...

  2. scp命令 – 远程拷贝文件

    scp命令 – 远程拷贝文件 SCP概述 一.格式 二.参数 三.实例 SCP概述 scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令.linu ...

  3. linux scp命令_太麻烦!使用 Linux scp 命令下载文件到 Windows 桌面

    使用 Windows 系统的小伙伴,在使用 xshell 或者 secureCRT 远程连接服务器,如需要下载或者上传文件,通常使用 rz.sz 命令.随着使用运维平台,在网页上操作,这种方式就不可取 ...

  4. linux scp命令用法_Linux SCP命令用法示例

    linux scp命令用法 Scp is an acronym for Secure Copy. It is used primarily for copying files over an ssh ...

  5. L1D1:嵌入式Linux C语言开发工具及基础命令

    嵌入式Linux C语言开发工具及基础命令 一.ubuntu环境搭建 请自行准备VMware workstation15安装包 及 ubuntu18.04.iso镜像文件.可参考链接:VMware W ...

  6. scp 命令 路径_基于SSH的文件传输:scp命令

    日常开发中,经常需要在服务器和本地之间进行文件传输.这里来介绍一种基于SSH的文件传输方法--scp命令 命令格式 scp(secure copy,remote file copy program), ...

  7. scp命令传文件--远程ip加端口号的方式

    scp命令传文件远程ip加端口号 scp -P port filename username@ip port为远程ip对应的端口号. P大写

  8. scp命令传输文件,显示的ETA符号是什么意思

    scp命令传输文件,显示的ETA符号是什么意思 问题描述: 在使用SCP命令,将本地文件上传至服务器时,在传输界面,出现了ETA符号,如下图所示: #### 问题解释: ETA(Estimated T ...

  9. linux more 乱码,Linux 中vim/more/cat/tail/head 命令查看文件显示乱码

    Linux 中 vim/more/cat/tail/head 命令查看文件显示乱码,乱码原因:Linux默认字符集码为 UTF-8 ,有些其它字库未安装 解决方法: 1)临时解决方法将当前文件强制使用 ...

最新文章

  1. Gson将字符串转map时,int默认为double类型
  2. 还在魔改Transformer结构吗?微软中山大学开源超强的视觉位置编码,涨点显著
  3. 1.5 引入解释性变量
  4. C语言大神进来看看这个题目
  5. html个人博客完整代码_hexo | 不用写代码,2小时快速搭建个人博客
  6. linux安装mongodb并创建用户
  7. android message to iphone,这款应用可以将苹果的iMessage带到安卓系统
  8. mysql统计一张表中条目个数的方法
  9. 逻辑程序设计语言Prolog
  10. taptap服务器要维护多久,TapTap发布游戏事故保护功能 解决游戏炸服问题
  11. DDE实现动态数据交换
  12. ocilib 使用_LibOciLib使用说明(2017-1-26更新)
  13. android 信号研究(包括信号图标和信号优化)
  14. 【Rosalind】Computing GC Content
  15. Flowable入门系列文章194 - JMX的基本介绍和属性说明
  16. 5G第一英里的“遭遇战”
  17. OpenCv图像处理——数字水印
  18. Mysql 生产数据报错: [Err] 1292 - Incorrect date value: '0' for column 'v_birthday' at row 1
  19. 在arcgis中自上而下,从左往右的顺序为图斑编号
  20. k8s自定义controller,创建CRD并验证

热门文章

  1. 传统IDC转型有了新思路 Zstack除了混合云还有托管云
  2. 从配置服务器说起......
  3. VS2008+Windows DDK 7的环境配置(二)
  4. Linux下查看磁盘挂载的三种方法
  5. Android之父卸任意味着什么?
  6. 找工作是一种必须的生活阅历
  7. 如何在ASP.NET中用OWC绘制图表
  8. 嵌入式系统低功耗管理(备忘)
  9. STM32高级开发(12)-在GCC中使用printf打印串口数据
  10. PAT甲级1016 Phone Bills :[C++题解]字符串处理(复杂题)(C语言格式化读入、输出很便利!!!)