【发布时间】: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 机器,以便执行上面显示的操作?
【问题讨论】: