2

我正在使用 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 会话吗?

错误 1

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

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

错误 2

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

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

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

4

2 回答 2

1

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

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

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

于 2012-08-06T22:09:21.233 回答
0

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

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


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

于 2013-04-03T14:16:13.683 回答