我正在尝试从FTP服务器到本地外部硬盘驱动器进行自动备份。从外部硬盘驱动器目标文件夹手动运行时,以下脚本适用于WinSCP:
E:\Backups\FTP>"C:\Program Files (x86)\WinSCP\WinSCP.com" /ini=nul /script="E:\Backups\ftptpp.txt"
我几乎没有在Windows中安排任务的经验,而且我使用的是Windows 8.1。按照WinSCP指南,我到目前为止写了这个:
"C:\Program Files (x86)\WinSCP\WinSCP.exe" /log="C:\Program Files (x86)\WinSCP\WinSCP.log" /ini=nul /script="E:\Backups\ftptpp.txt"
但是,在我手动运行的原始脚本中,我从目标文件夹运行它。如何在任务计划程序中指定目标文件夹所在的位置(E:\ Backups \ FTP)?
作为参考,ftptpp.txt脚本如下所示:
# Connect
open ftp://username:password@ftp.example.org/
# Change remote directory
cd /
# Download file to the local directory
synchronize local
# Disconnect
close
# Exit WinSCP
exit
答案 0 :(得分:1)
为计划任务指定“操作”时,会出现一个名为“Start in”的字段。这与您手动“运行”脚本的目录相对应,即“目标文件夹” E:\Backups\FTP
。
虽然我个人建议您直接在WinSCP脚本中指定目标文件夹:
synchronize local E:\Backups\FTP /
或
cd /
lcd E:\Backups\FTP
synchronize local
请参阅https://winscp.net/eng/docs/scriptcommand_synchronize
旁注:除非您使用管理员权限(不应该使用!)运行任务,否则无法登录“Program Files”文件夹,因此无效:
/log="C:\Program Files (x86)\WinSCP\WinSCP.log"