通过 VBA 使用 SFTP 下载文件

2023-12-29

我的目标是从 SFTP 服务器下载文件,而不是上传文件,并且我正在尝试调整本网站上另一个问题的代码来执行此操作(为了方便起见,我粘贴了下面的代码)。

我从 Putty 下载了 PSFTP。当我尝试使用以下命令行进行连接时,PSFTP 关闭:

open username:[email protected] /cdn-cgi/l/email-protection:1111 

我有三个问题:

  1. 我的命令行有问题吗?如果不是那么可能是什么问题?

  2. 据我所知,SFTP 通常会使用 get/put 命令,但我在下面的代码中没有看到 put 命令,所以我不明白应该在哪里输入 get 命令来下载文件而不是上传文件(这就是下面的代码应该做的事情)。

  3. pRemotePath 是文件在 SFTP 服务器上的位置,pFile 是我想要将文件下载到的位置,这是否正确?

一个简单的解释将非常感激。

Public Sub SftpGet()

    Const cstrSftp As String = """C:\Users\Ron\UtilityTools\psftp.exe"""
    Dim strCommand As String
    Dim pUser As String
    Dim pPass As String
    Dim pHost As String
    Dim pFile As String
    Dim pRemotePath As String

    pUser = "uid"
    pPass = "PW"
    pHost = "dns"
    pFile = "C:\Users\Ron\activity.txt" 
    pRemotePath = "Z:/activity.log"

    strCommand = cstrSftp & " -sftp -l " & pUser & " -pw " & pPass & _
        " " & pFile & " " & pHost & ":" & pRemotePath
    Debug.Print strCommand
    Shell strCommand, 1 ' vbNormalFocus '
End Sub

我认为您应该从 Windows 命令提示符会话开始。正如我在回答类似问题时所建议的那样,在那里计算出命令行的详细信息:使用 VBA 进行 SFTP 上传 https://stackoverflow.com/a/3789851/77335。一旦有了可以在其中运行的命令行,就可以很容易地从 VBA 执行相同的命令。

我从来没有用过腻子psftp.exe工具,仅pscp.exe,所以我无法提供有关如何构建您的帮助psftp.exe命令行。我注意到一件事Putty 的文档 http://the.earth.li/~sgtatham/putty/0.62/htmldoc/Chapter6.html#psftp是 PSFTP (pscp.exe)只能与 SSH-2 服务器配合使用 --- 如果您的目标服务器仅支持 SSH-1,则 PSFTP 将无法工作。

我认为您有必要查看该链接上的 Putty 文档。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 VBA 使用 SFTP 下载文件 的相关文章

  • 使用 PDFMAKER 将多封电子邮件保存为 pdf

    我是 VBA 的新手 但我用 SAS 编写了一些程序 用汇编程序 大型机和 PC Word Perfect 宏 编写了一些程序 用 Java HTML 和其他东西编写了一些程序 我所做的是 当我遇到问题并且我认为我可以对其进行编程时 我会在
  • 有没有办法调用 VBA(MS Access 2002 或 2003)中任何控件的 BeforeUpdate 事件过程?

    在 VBA 中 我正在更改 Access 表单中的一些控件的值 我喜欢在执行此操作后运行这些控件的 BeforeUpdate 事件 因为它会检查字段之间的一致性 Private Sub ExampleProc1 Dim intCancel
  • IE.navigate2 因保护模式关闭而失败

    我正在从 Excel VBA 自动化 IE8 Excel 2010 Windows 7 Set IE CreateObject InternetExplorer Application IE Navigate2 URL 如果 URL 是处于
  • VB SQL 语句未选择正确的行

    我试图使用 SELECT 语句在我的数据库中 选择 一个人 但它没有选择正确的人 我也不确定为什么 我正在使用访问数据库 数据库连接代码 Imports System Data OleDb Module Database Connectio
  • 运行时错误“1004”:对象“_Global”的方法“Range”失败

    我在使用 Excel 时遇到问题 有一个生成参考号的表单 但是当我尝试生成参考号时 它有一条错误消息 运行时错误 1004 对象 Global 的方法 Range 失败 当我点击 调试 按钮时 它显示的代码如下 它突出显示代码第 4 行的错
  • 如何处理 Workbook.SaveAs 覆盖确认上的“否”或“取消”?

    我希望在 VBA 脚本开始修改内容之前提示用户保存工作簿 当 另存为 对话框出现时 如果用户单击 取消 我会引发自定义错误并停止脚本 如果他们单击 保存 并且文件名已存在 我希望询问他们是否覆盖 这是我的代码 Function SaveCu
  • 使用 OkHttp 下载损坏的文件

    我编写的下载文件的方法总是会产生损坏的文件 public static String okDownloadToFileSync final String link final String fileName final boolean te
  • MS Access 中的舍入

    VBA Access 中舍入的最佳方法是什么 我目前的方法是利用Excel方法 Excel WorksheetFunction Round 但我正在寻找一种不依赖Excel的方法 请注意 VBA Round 函数使用 Banker 舍入 将
  • 动态创建和下载Doc文件

    因此 我尝试动态创建 doc 文件并让用户在单击按钮时下载该文件 这些是我找到的用于下载文件的标头 header Content Description File Transfer header Content Type applicati
  • 查找并替换目录中所有 Excel 文件工作簿中的字符串

    我正在编写 VBA 代码来替换位于特定目录中的多个 Excel 文件 工作簿 中的特定字符串 我尝试在 Stack Overflow 上搜索 找到答案 但这与通过 Excel 中的宏替换文本文件中的字符串有关 相同的链接是查找并替换文件中的
  • 如何使用 VBA 将 mm/dd/yyyy 更改为 dd/mm/yyyy

    我在使用 VBA 将 mm dd yyyy 转换为 dd mm yyyy 日期格式时遇到问题 我有一个这样的表 仅供参考 该表是从报告工具自动生成的 字符串操作 或任何 Excel 函数可以提供帮助吗 希望知道如何解决这个问题的人可以给我一
  • 在 VBA 中循环合并单元格

    是否可以循环遍历合并的单元格vba questions tagged vba 我的范围内有 6 个合并单元格B4 B40 我只需要这 6 个单元格中的值 6 次迭代 上面的答案看起来已经让你排序了 如果您不知道合并的单元格在哪里 那么您可以
  • 如何使用 SSIS 将多个 Access 数据库导入到 SQL Server

    我有一个文件夹 其中包含 300 多个 Access 数据库 由我无法控制的程序编写 它们都有相同的结构 只是一张表 我正在将数据导入到 SQL Server 2005 中的表中 使用导入向导效果很好 但它一次只能用于一个 Access 数
  • Android STFP 库 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在我的 Android 项目中使用 SFTP 安卓已经有了吗 SFTP 库 还是我必须实现它 I
  • Outlook 无法识别一个或多个姓名

    我有以下 vba 代码 它读取邮箱并向任何发送无效代码作为邮箱回复的用户发送回复 但有时会收到运行时错误 Outlook 无法识别一个或多个名称 我的问题是 创建新的 MAPI 配置文件是否可以解决该问题 或者我是否需要添加一个代码来解析地
  • 如何使用VBA根据条件删除Excel中的行?

    我目前正在构建一个宏来格式化数据表并删除不适用的数据行 具体来说 我希望删除列 L ABC 的行以及删除列 AA DEF 的行 到目前为止 我已经实现了第一个目标 但还没有实现第二个目标 现有代码是 Dim LastRow As Integ
  • 在 MS Word 中运行外部 vba 代码

    我可以将外部代码链接到 Word 文档吗 我有很多带有宏的 Word 文档 VBA 代码 全部使用相同的代码 我希望代码从外部源运行 而不是从所有这些文档中运行 这样 如果我必须更新代码 我只有一个地方需要更新 您可以创建一个模板并将其放入
  • 在 VBA Excel 中查找、剪切和插入行以匹配借项和贷项值

    我在 Sheet1 中有以下设置数据 并从第 4 行 A 列开始 其中标题位于第 3 行 No Date Code Name Remarks D e b i t Cr e d i t 1 4 30 2015 004 AB 01 04 15
  • Excel工作簿关闭后反复打开

    我使用了 Application ontime 方法来调度一些宏 关闭工作簿后 它会一次又一次地打开 为了解决这个问题 我在工作簿上设置了另一个事件 BeforeClosed 现在它显示运行时错误 1004 Object Applicati
  • 如何在 VBA 中声明接受 XlfOper (LPXLOPER) 类型参数的函数?

    我在之前的回答里发现了问题 https stackoverflow com q 19325258 159684一种无需注册即可调用 C xll 中定义的函数的方法 我之前使用 XLW 提供的注册基础结构 并且使用 XlfOper 类型在 V

随机推荐

  • 有条件地从两个类中的任何一个继承[重复]

    这个问题在这里已经有答案了 可能的重复 在编译时动态生成结构 https stackoverflow com questions 11376149 generating structures dynamically at compile t
  • “记住我”身份验证功能是否总是意味着“不安全”网站?

    我正在考虑实施经典 记住我 复选框在我的网络应用程序上 允许经过身份验证的用户在返回访问我的网站后被 记住 Gmail http www gmail com Facebook http www facebook com其他人也有这种功能 但
  • Eigen Matrix 与 Numpy Array 乘法性能

    I read 在这个问题中 https stackoverflow com questions 10366054 c performance in eigen librar that eigen具有非常好的性能 但是 我尝试比较eigen
  • 类型化数据集的缺点是什么

    我来自一个喜欢构建自己的世界 而不是依赖他人构建的库和框架 逃离这个世界后 我发现了在 Visual Studio 中使用类型化数据集等工具的乐趣和轻松 那么除了失去灵活性之外 你还失去了什么 是否存在性能因素 忽略 procs 与动态 s
  • MVC 控制器操作参数为空

    我有控制器名称 District 和操作名称 Incharges 但我希望 URL 是这样的 带有一些参数的操作名称 www example com district incharges aaa www example com distri
  • Javascript无符号短到有符号短

    我有以下代码 var v 0xFF 0xFF alert v 0 lt lt 8 v 1 并警告 65535 最大空头值 如何将此字节数组视为有符号短整型 并获取该数组的有符号值 假设高位为符号 var sign v 0 1 lt lt 7
  • 如何自定义 JQPlot 周围的黑色边框

    如何在 JQPlot 中自定义图表周围的黑色边框 我广泛搜索了 CSS 文件 但没有找到任何内容 UPDATE 如果您不明白我的意思 请看这张图片 http img339 imageshack us img339 5796 jqplot p
  • 支持多种TLS协议的HttpClient

    我们正在编写一个必须使用 HTTPS 与一些服务器通信的应用程序 它需要与 AWS 使用 AWS 库 以及我们使用 TLS 1 2 的一些内部服务进行通信 我首先将 HttpClient 更改为使用 TLS 1 2 SSLContext p
  • 我对 PHP 会话的理解是否正确?

    我一直对会话内部如何工作很感兴趣 但我对 C 知之甚少 并且不确定在 PHP 源代码中哪里可以找到这一点 这是我目前对会话的理解 当您启动会话时 用户会被分配一个存储在 cookie 中的会话 ID 保存会话数据时 通过 SESSION 它
  • PHP 文件上传类型检查

    好的 这是我上传文件的代码 ext whitelist array pdf doc doc mkv mp4 mpg mpeg avi flv wma ogg if in array ext ext whitelist uniqid file
  • Firebase 托管应用引擎 URL 的 Access-Control-Allow-Origin

    我在 Firebase 托管上托管一个单页应用程序 我需要允许对应用程序引擎的跨域请求 应用程序托管在project id firebaseapp com 上 应用程序引擎服务托管在project id appspot com 上 我把部署
  • 如何用RadWindow替换警报消息框

    My Code
  • 在 Obj-C 中获取 AppleScript 返回值

    我在 Obj C cocoa 项目中使用一些 AppleScript 来控制 QuickTime 播放器 播放 暂停 停止 快进和快退等 取得了巨大成功 尽管我对 AppleScript 的了解非常有限 然而 我最想要的是电影的 当前时间
  • R:在循环内定义函数

    在循环中定义多个函数 par lt 1 2 parameters for functions qF lt list list I will write the functions into for i in 1 2 qF i lt func
  • 使用 CSS 将顶部和底部边框添加到一组选定元素

    所以我有一个搜索结果网格 这些结果是可选择的 当它们被选择时 我添加class selected 给他们 可以有多组结果 通过命令 按住 Ctrl 键单击行来完成 我所说的结果组是指选择的连续元素 我想要做的是 仅向任何给定的选定结果组的第
  • 获取所有登录用户

    我想有自己的聊天 我无法使用聊天模块 因为我必须对其进行个性化 我必须检索所有在线用户 但我看不到任何变量 我只能获取当前登录用户的名称 而无法获取其余登录用户的名称 您可以通过查询会话表来获取所有登录用户的列表 我假设您使用的是 Drup
  • 在 ASP.net Core Web Api 中动态选择身份验证方案

    我正在将使用 OWIN 和 NET Framework 构建的自托管 Web API 移植到 ASP NET Core Web API 使用 NET 6 0 在原始 API 中 我有一个自定义身份验证机制 可以根据请求中的标头动态为每个调用
  • MailChimp API 成员信息问题

    我需要通过 api 检索所有用户信息 在我发现的文档中查找它 http apidocs mailchimp com api 2 0 lists member info php http apidocs mailchimp com api 2
  • 无法安装包车

    我在 Linux mint 17 3 64 位中使用 R 版本 3 2 3 我试图安装包 car dependencies TRUE 但安装失败并出现以下错误消息 gt warnings Warning messages 1 In inst
  • 通过 VBA 使用 SFTP 下载文件

    我的目标是从 SFTP 服务器下载文件 而不是上传文件 并且我正在尝试调整本网站上另一个问题的代码来执行此操作 为了方便起见 我粘贴了下面的代码 我从 Putty 下载了 PSFTP 当我尝试使用以下命令行进行连接时 PSFTP 关闭 op