如何在Linux中使用sFTP上传或下载文件与文件夹

sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似。 然而,sFTP 比 FTP 更安全;它通过加密 SSH 传输处理所有操作。在本文中,我们将向你展示如何使用 sFTP 上传/下载整个目录(包括其子目录和子文件)。

作者:Aaron Kili来源:Linux中国|2017-03-09 14:42
移动端
收藏
分享

51CTO诚邀您9月23号和秒拍/国美/美团元专家一起聊智能CDN的优化之路,抓紧时间哦!

sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似。 然而,sFTP 比 FTP 更安全;它通过加密 SSH 传输处理所有操作。

它可以配置使用几个有用的 SSH 功能,如公钥认证和压缩。 它连接并登录到指定的远程机器,然后切换到交互式命令模式,在该模式下用户可以执行各种命令。

在本文中,我们将向你展示如何使用 sFTP 上传/下载整个目录(包括其子目录和子文件)。

如何在 Linux 中使用 sFTP 传输文件/文件夹

默认情况下,SFTP 协议采用和 SSH 传输协议一样的方式建立到远程服务器的安全连接。虽然,用户验证使用类似于 SSH 默认设置的密码方式,但是,建议创建和使用 SSH 无密码登录,以简化和更安全地连接到远程主机。

要连接到远程 sftp 服务器,如下建立一个安全 SSH 连接并创建 SFTP 会话:

  1. $ sftp tecmint@192.168.56.10

登录到远程主机后,你可以如下运行交互式的 sFTP 命令:

  1. sftp> ls            #list directory
  2. sftp> pwd           #print working directory on remote host
  3. sftp> lpwd          #print working directory on local host
  4. sftp> mkdir uploads     #create a new directory

Run sFTP Commands on Remote Linux

  • Linux 主机上运行 sFTP 命令*

如何使用 sFTP 上传文件夹

要将整个目录上传到远程 Linux 主机中,请使用 put 命令。但是,如果目录名称不存在于远程主机上的工作目录中,你将收到错误,如下面的屏幕截图所示。

因此,首先在远程主机上创建一个具有相同名称的目录,然后从本地主机上传它,-r 参数允许拷贝子目录和子文件:

  1. sftp> put -r  Tecmint.com-articles
  2. sftp> mkdir Tecmint.com-articles
  3. sftp> put -r Tecmint.com-articles

使用 sFTP 上传文件夹

要保留修改时间、访问时间以及被传输的文件的模式,请使用 -p 标志。

  1. sftp> put -pr Tecmint.com-articles

如何使用 sFTP 下载文件夹

要从远程 Linux 主机下载整个 fstools-0.0 文件夹到本机中,如下所示使用 get 命令带上 -r 标志:

  1. sftp> get -r fstools-0.0

使用 sFTP 下载目录

如果文件夹已经下载完成了,接着查看本机的工作目录。

要退出 sFTP shell,输入:

  1. sftp> bye
  2. 或者
  3. sftp> exit

此外,阅读这篇 sFTP 命令和使用技巧。

请注意,为了防止用户访问远程主机上的整个文件系统,出于安全原因,你可以使用 chroot Jail 将 sFTP 用户限制到其主目录中。

就是这样了!在本文中,我们向你展示了如何使用 sFTP 上传/下载整个目录。使用下面的评论栏向我们提供你对本文/主题的看法。

作者简介:

Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux 系统管理员和网络开发人员,目前是 TecMint 的内容创作者,他喜欢用电脑工作,并坚信分享知识。

如何在Linux中使用sFTP上传或下载文件与文件夹相关推荐

  1. Linux中使用SecureCRT上传、下载文件命令sz与rz用法实例

    借助securtCRT,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器 其中,对于sz和rz的理解与记忆我用了如下的方法(因为很多时候容易搞混): ...

  2. linux ftp 登录慢,linux中vsftpd登录,上传下载文件慢解决办法linux操作系统 -电脑资料...

    vsftpd登录慢主要是nameserver #定义DNS服务器的IP地址没有设置了,这样我们只要设置或更新一下nameserver即可解决了, 在使用vsftpd的过程中,一直以来都有一个问题就是在 ...

  3. python实现sftp上传和下载

    python3 sftp上传使用的是paramiko模块 #!/usr/bin/python # coding=utf-8 #sftp上传和下载单个文件上传和下载实现方式 import paramik ...

  4. VB FTP操作类(可上传、下载、创建文件夹等等)

    可实现FTP上传下载,建文件夹等功能,从网上找了一个类,对其进行修改和功能补充,正常使用,非常方便. 切记在使用FtpFindFirstFile 函数查找相应的文件或文件夹后,要使用InternetC ...

  5. java实现ftp连接、登陆、上传、下载、删除文件、获取目录、文件列表

    全栈工程师开发手册 (作者:栾鹏) java教程全解 java实现ftp连接.登陆.上传.下载.删除文件.获取目录.文件列表等操作. 本地调试,首先需要在本机上开启ftp服务和ftp站点. 测试代码 ...

  6. winform实现FTP上传、下载、删除文件(附源码下载)

    一个用winform开发的FTP上传.下载.删除文件的简单列子: 配套源码下载:https://download.csdn.net/download/djk8888/10473477 注释尽可能详尽, ...

  7. Qt之QFtp 在客户端实现文件上传、下载、新建文件夹、重命名、删除和刷新等功能

    简述 本来是打算用新的类QNetworkAccessManager实现的客户端的文件上传.下载.新建文件夹.重命名.删除和刷新等功能,但是QNetworkAccessManager没有提供原本在QFt ...

  8. linux中使用lftp上传下载文件

    lftp是linux中一款ftp服务器相比windows中的ftp显得要复杂不少了,下面我来总结一下lftp文件上传,文件下载,及文件查找等等相关命令吧. lftp连接的几种方法,最常用的是lftp ...

  9. linux lftp下载目录,linux中使用lftp上传下载文件

    lftp是linux中一款ftp服务器相比windows中的ftp显得要复杂不少了,下面我来总结一下lftp文件上传,文件下载,及文件查找等等相关命令吧. lftp连接的几种方法,最常用的是lftp ...

最新文章

  1. 1080 Graduate Admission
  2. 提前半年博士毕业,一作发顶刊论文11篇,这位“科研学霸”的秘诀是?
  3. 如何学好 Linux、C++,并搞定 BAT 面试 作者/分享人:天千
  4. python __reduce__魔法方法_关于python魔术方法payload:.__class__.__mro__[2].__subclasses__()[40](/etc/passwd...
  5. 181920.net用 文字存档
  6. Linux系统下部署Tomcat
  7. [BZOJ 3629][JLOI2014]聪明的燕姿
  8. 配置OpenCV产生flann\logger.h(66): error C4996: ‘fopen': This function or variable may be unsafe问题
  9. Mysql中SQL语句不使用索引的情况
  10. python爬虫定时运行_python 爬虫 定时计划任务
  11. 绿盟漏扫使用手册_爬取绿盟漏洞扫描器数据
  12. 简易交通灯设计——数电课设
  13. 浏览器的语音识别功能
  14. iPhone4S 未能激活蜂窝移动数据网
  15. IllegalStateException: Only fullscreen opaque activities can request orientation
  16. win10 通过命令打开画图工具
  17. 新手成长系列之基本设置全攻略
  18. lucas定理、拓展lucas定理学习小结
  19. 【产品设计】有了创意,如何从零开始搭建一套产品模型
  20. 实现android按键震动按键声音的机制

热门文章

  1. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(36)-文章发布系统③-kindeditor使用...
  2. ubuntu amd64 的锐捷连接解决办法---武汉大学
  3. oracle 创建数组
  4. zoj1022 Parallel Expectations(DP)
  5. unix 时间戳转化为 日期格式
  6. 利用java实现浏览器功能 jdic
  7. Web项目(四)————异步队列的实现
  8. dubbo之服务降级
  9. Laravel5.2队列驱动expire参数设置带来的重复执行问题 数据库驱动
  10. 吸电流、拉电流、灌电流、上拉电阻、下拉电阻、高阻态等基础知识普及