我正在尝试创建一个批处理文件,并使用用户名mark123和密码testabc将其FTPs到本地目录"C:\Desktop\GoHere\“中的目录为"C:\Documents\Client\”的URL(例如ftp.tester123.com.au)中。
该脚本用于将此ftp目录中的所有文件复制到我的本地计算机。我已经阅读了下面的msdn教程https://support.microsoft.com/en-gb/kb/96269
但它对我目前的问题没有帮助。winscp是否允许我执行此任务并为其创建批处理文件?我想自动执行这个目录--比如在每晚的午夜。这个是可能的吗?
或者,我非常熟悉.NET,winSCP有一个包装器,允许您编写C#而不是标准脚本。如果我使用.NET方法,我可以创建一个简单的.exe或批处理文件,只需双击即可执行吗?
提前感谢!
发布于 2016-09-08 18:35:41
你要做的是一项非常微不足道的任务。您缺少的是对任务的概念性理解。所以很难给你一个对你有帮助的答案,因为很难理解你遗漏了什么知识来完成它。
开始时最简单的方法是使用generate a transfer code的WinSCP功能
使用WinSCP;
您将获得 dialog。
在这里,您可以选择是否希望WinSCP to generate a WinSCP script or even complete Windows batch file


(这些是来自WinSCP文档的官方屏幕截图。因此它们显示SFTP上载,而不是FTP下载)
现在您已经准备好了批处理文件或C#可执行文件,可以使用schedule it to be run using Windows Scheduler了。
发布于 2019-06-12 18:19:32
如果您安装了WinSCP,那么下面的代码将为您工作。我从一个特定的文件夹中获取所有文件,并将其下载到本地文件夹。一路上写了一个日志文件。您也可以使用WinSCP生成此代码。
@echo off
set mydate=%date:~10,4%%date:~7,2%%date:~4,2%
set d_name=/export/home/sysm/opt/oss/server/var/fileint/pm/pmexport_%mydate%
#echo %d_name%
"C:\Program Files (x86)\WinSCP\WinSCP.com" ^
/log="C:\Users\HP\Desktop\Datacom\Reports\WinSCP.log" /ini=nul ^
/command ^
"open sftp://YOUR_USERNAME:YOUR_PASSWORD@FTP_SERVER_IP/ -hostkey=""ssh-rsa 1024 PUuYRVADKXB9j1Si+o89v2fsrsr7w2ZrV3NIqdz6kus0GtY=""" ^
"cd %d_name%" ^
"lcd C:\Users\HP\Desktop\Datacom\Reports\Test_ftp" ^
"get *" ^
"exit"
set WINSCP_RESULT=%ERRORLEVEL%
if %WINSCP_RESULT% equ 0 (
echo Success
) else (
echo Error
)
exit /b %WINSCP_RESULT%根据需要修改它,然后将代码放入.bat文件中。稍后,您可以手动执行它,也可以使用Windows任务计划程序。
https://stackoverflow.com/questions/39387137
复制相似问题