【问题标题】:WinSCP: Current SFTP-3 session does not support command you request. Separate shell session may be opened to process the commandWinSCP:当前 SFTP-3 会话不支持您请求的命令。可以打开单独的 shell 会话来处理命令
【发布时间】:2012-08-03 21:32:28
【问题描述】:

我正在使用 WinSCP 与仅支持 SFTP 且不允许 SSH 访问的远程服务器交互。

我的交互涉及移动/删除某个目录中的文件子集(由文件名标识)。

为了简化这一点,我通常会同步 [ Remote -> Local ],使用 cygwin 命令行在本地删除文件(这样我可以指定文件名列表而不是在 GUI 中选择文件),然后同步 [ Local -> Remote ] 将删除推送到远程。

但是,现在,我想进一步简化流程,以便将其交给运营人员。我去看了,很高兴发现 WinSCP 支持“命令”。

如果我可以在 WinSCP 的“指挥官”视图底部的“命令”字段中输入类似的内容,那就太好了:

get queue-queue-from-DLQ-ID-69703273-db51-11e1-ba9f-005056010165 \
    queue-queue-from-DLQ-ID-3d64697a-db51-11e1-b86e-005056010166 \
    queue-queue-from-DLQ-ID-76fdb365-db50-11e1-b78d-005056010164 \
    queue-queue-from-DLQ-ID-76ed3836-db50-11e1-ba9f-005056010165

但是当我在“命令”字段中输入这个时,我收到以下错误:

当前 SFTP-3 会话不支持您请求的命令。可以打开单独的 shell 会话来处理命令。是否要打开单独的 shell 会话?

当我点击确定时,我收到以下错误:

跳过启动消息时出错。您的 shell 可能与应用程序不兼容(建议使用 BASH)。

后一种可能是因为不支持SSH。

但我的问题是,既然get 是一个 SFTP 命令,为什么我会收到第一个错误? WinSCP 本身不是在幕后使用该命令来支持 GUI 的“复制到本地”操作吗?

如何配置 WinSCP 或 Linux 机器,以便执行上面显示的操作?

【问题讨论】:

    标签: scripting winscp


    【解决方案1】:

    我想这回答了我的问题:http://winscp.net/eng/docs/remote_command

    显然,只有 SCP 支持“命令”功能。

    我想知道为什么 WinSCP 不能为 sftp 交互式会话期间通常支持的 SFTP 操作公开命令行界面。

    【讨论】:

      【解决方案2】:

      您可以使用 WinSCP 命令行脚本界面来运行get 命令。

      https://winscp.net/eng/docs/scripting


      即使是 SFTP 协议也支持“命令”功能(远程命令执行)。但是此功能在远程服务器上执行命令。您不能使用此功能来自动化 WinSCP。并且没有可以轻松用于下载文件的远程命令。
      https://winscp.net/eng/docs/remote_command

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-19
        • 1970-01-01
        • 1970-01-01
        • 2018-06-08
        • 1970-01-01
        • 1970-01-01
        • 2010-09-18
        • 1970-01-01
        相关资源
        最近更新 更多