recursion - 如何在sftp中实现递归放置

标签 recursion sftp put

我的 Ubuntu 中的命令行 sftp 没有实现递归放置。我发现了 2004 年关于使用 -R 选项开关实现此类功能的一些争论。所以我认为某种自制的递归是唯一的选择。

IE。

  • 遍历目录列表
  • cd 进入目录
  • 如果不存在,则 mkdir 它们
  • 放置文件

  • 我打算用 bash 来做这件事,但任何其他语言都足够了。

    Rsync 或 scp 不是一个选项,因为我没有对服务器的 shell 访问权限。只有sftp。

    最佳答案

    lftp .它是一个强大的文件传输客户端,支持 ftp、ftps、http、https、hftp、fish(通过 ssh shell session 传输文件)和 sftp .它具有类似 ftp 的交互界面,但也允许在命令行指定所有命令。看 mput (非递归但处理全局模式)和 mirror (穷人的 rsync)命令。

    我将它与仅处理 sftp 上传的服务器一起使用:

    lftp -c "open -u $MYUSER,$MYPASSWORD sftp://$TARGET ; mirror -R $SOME_DIRECTORY"
    

    关于recursion - 如何在sftp中实现递归放置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1595565/

    相关文章:

    recursion - SML 中的递归二元决策图

    recursion - 第四,Hofstadter Q 序列的递归

    linux - 如何从 SFTP 服务器获取文件并将它们移动到 bash 脚本中的另一个文件夹?

    .net - .NET Core 2.0 有 SFTP 客户端吗?

    REST PUT 与 POST 与 UUID

    http - 无法通过 Squid 代理测试基于 HTTP PUT 的文件上传

    python - Django 测试客户端方法覆盖 header

    java - 插入排序算法大o : iterative and recursive

    c++ - 递归的最大深度是多少?

    Node.js SFTP 服务器