2012-11-12 50 views
2

我试图通过称为WinSCP这是一个安全的FTP客户端软件连接到SFTP服务器,我可以通过发送密钥并以psuedo无人参与模式进行工作来编写脚本,但服务器必须有一个用户登录发送密钥,我需要WinSCP登录和传输文件,如控制台不启动的服务。脚本SFTP无人参与下载

我曾尝试以下的 WinSCP网站上的教程(用于自动化/无人接送,但它给我的错误:Cannot created object,或cannot find library(从我与COM相关的DLL文件)

错误我得到的,当我运行下面的代码是:

line 13, Char: 2 
Could not created object named "WinSCP.SessionOptions" 
Code: 80040154 
Source: Wscipt.CreateObject 

我也或许应该提到的是,我得到关于如何创建Session对象,行21或22类似的错误,当我删除第13行的代码,看是否这是唯一的问题

<job>                
<reference object="WinSCP.Session"/> 

<script language="VBScript"> 




Option Explicit 

' Setup session options 
Dim sessionOptions 
Set sessionOptions = WScript.CreateObject("WinSCP.SessionOptions") 
With sessionOptions 
    .Protocol = Protocol_Sftp 
    .HostName = "host" 
    .UserName = "username" 
    .Password = "password" 
End With 

Dim session 
Set session = WScript.CreateObject("WinSCP.Session") 

' Connect and Get 
session.Open sessionOptions 

session.GetFiles("/Fromn/*.*", "C:\testFilesFrom").Check() 



' Disconnect, clean up 
session.Dispose 

</script> 
</job> 

有没有人有任何经验脚本编写这种工作,其中服务器没有登录和脚本可以运行SFTP会话?有没有我做错的事情或者这是不可能的?

回答

1

WinSCP被制作为交互式使用。对于非交互式作业使用PSCP。我强烈建议使用公钥验证而不是密码验证。

+0

不幸的验证方法是达不到我,但我会提到它的FTP站点管理员,我会尽量PSCP的平均时间 – ScottC

+0

所以我发现有很多网站展示了如何脚本PSCP通过发送密钥,但我已经能够做到这一点,我找不到任何网站显示PSCP非交互式脚本...您可以指向我的任何网站? – ScottC

+0

'pscp - ?'显示一个选项'-pw passwd login with specified password'。 –