2013-07-11 138 views
1

我试图从SQL Server代理作业运行以下命令,将每日文件上传到我们的FTP服务器。我尝试从本地实用程序(如WinSCP 5.1.5)连接到FTP连接成功,但没有任何问题,但是脚本连接尝试失败(以下是代码和错误)。有人能帮助我在正确的方向吗?致命:服务器意外关闭网络连接

$Error.Clear(); 
$csv_file = "FilePath" 
$sftp_cmd = "C:\psftp.exe" 

$user = "TestUser" 
$pass = "pwd" 
$hst = "ftp3.xyz.com" 
$cmd = @(
    "put $csv_file", 
    "bye" 
) 

$cmd | & $sftp_cmd -pw $pass "[email protected]$hst" -batch 

我总是得到一个错误

致命的:服务器意外关闭网络连接。

回答

1

该命令对我来说工作正常。但是,您的问题表明您尝试连接到FTP服务器。 WinSCP可以同时处理SCP/SFTP和FTP连接,但就我所知,psftp仅支持SFTP(基于SSH的文件传输协议,不要与FTPS混淆)。

如果您的服务器不是SSH服务器,则需要使用FTP客户端进行数据传输(例如,Windows附带的ftp.exe)。如果您的服务器是SSH服务器,请尝试使用选项-v运行psftp以获取更多信息,并检查服务器上的日志。

+0

对不起,我的不好;这是一个SFTP事实。原来是网络问题。它的工作很好。 –

相关问题