Scripting 使用WinSCP脚本从SSI访问SFTP

Scripting 使用WinSCP脚本从SSI访问SFTP,scripting,ssis,winscp,Scripting,Ssis,Winscp,我是WinSCP新手,正在尝试创建一个脚本文件,最终将与SSIS一起用于从SFTP站点下载文件。WinSCP包含的大量文献解释了文件下载或上载部分。目前,我只想先创建一个脚本来测试连接,然后从那里开始构建 到目前为止,我已将连接保存在WinSCP中,并具有以下内容。下面的代码似乎根本不起作用,我也不知道还能去哪里,因为我还在阅读有关WinSCP脚本的文章。有没有办法或者有人能告诉我一个方向,看看我是否真的通过脚本连接 option batch on option confirm off op

我是WinSCP新手,正在尝试创建一个脚本文件,最终将与SSIS一起用于从SFTP站点下载文件。WinSCP包含的大量文献解释了文件下载或上载部分。目前,我只想先创建一个脚本来测试连接,然后从那里开始构建

到目前为止,我已将连接保存在WinSCP中,并具有以下内容。下面的代码似乎根本不起作用,我也不知道还能去哪里,因为我还在阅读有关WinSCP脚本的文章。有没有办法或者有人能告诉我一个方向,看看我是否真的通过脚本连接

option batch on 
option confirm off 
open username@address 
exit
不确定SSI是什么(抱歉),但如果有帮助,我可以告诉您如何从windows批处理文件进行设置:

如果您愿意使用不同的软件,请考虑使用CygWin。它模仿linux shell,因此windows上的linux用户手头有很多linux实用程序。也就是说,有些命令可以直接从命令提示符在windows上运行(因此可以批处理)。您需要做的是:

1) 安装cygwin 2) 创建“无密码”登录(使用ssh rsa身份验证)。为此,启动cygwin终端并使用命令“ssh-keygen”和“ssh-copy-id”(稍后将详细介绍) 3) 现在,您可以从DOS命令提示符(不需要cygwin终端)运行“sftp”,并将sftp发送到您的帐户。由于步骤2),不需要密码)

一些后续信息:

什么可以从dos命令提示符运行,什么必须从cygwin终端运行

如果您转到cygwin的“bin”目录(对我来说,它在c:\cygwin\bin中),您可以看到所有cygwin实用程序。任何带有“exe”扩展名的程序都可以在dos命令提示符下运行。如果没有“exe”扩展,则必须首先启动cygwin终端

如何设置ssh rsa身份验证

你几乎可以在谷歌上搜索“ssh无密码登录”并获得大量结果。这在设置从一个linux系统到另一个linux系统的登录时很常见。在windows上使用cygwin也可以使用相同的步骤。我的指示如下:


将会话设置存储在WinSCP GUI中,并尝试从SSIS中运行的WinSCP脚本访问它们通常是一个坏主意。我相信在WinSCP网站上没有任何示例或指南会建议这样做

WinSCP将其配置存储在
HKEY\U CURRENT\U USER
配置单元的注册表中。SSI通常在专用系统帐户下运行,该帐户有自己的
HKEY\U当前用户
hive,并且不会看到GUI配置

有关详细信息,请参阅WinSCP常见问题解答:

最好使用with
open
命令将脚本与配置隔离,而不是使用存储的站点名称。
另见



但你的实际问题可能完全不同。但这很难猜测,因为您没有分享任何详细信息,例如错误消息、日志文件等。

现在实际的问题是什么?