将最近一小时生成的文件上传到FTP

时间:2017-06-13 12:32:13

标签: windows batch-file ftp

我尝试将一小时内生成的最新文件上传到远程服务器。但是我编写的脚本非常智能,只能收集目录中的最新文件并将其上传到FTP。有可能将变量类型设置为数组并上传数组中的文件吗?

我的FTP批处理文件:

FOR /F %%I IN ('DIR "abcdef*.bac" /B /O:D') DO SET latest_file=%%I

echo user domain/username> ftp.txt
echo password>> ftp.txt
echo cd remotepath>> ftp.txt
echo put %latest_file%>>ftp.txt
echo quit>> ftp.txt

ftp -n -s ftp.txt Servername>ftp_logs.txt

del ftp.txt

1 个答案:

答案 0 :(得分:0)

在纯批处理文件代码中编写它是很困难的。

你最好使用一些更强大的工具。

例如WinSCP FTP client,这是微不足道的:

winscp.com /ini=nul /log=upload.log /command ^
    "open ftp://username:password@ftp.example.com/" ^
    "put -filemask=>1H C:\local\path\abcdef*.bac /remote/path/" ^
    "exit"

参考文献:

(我是WinSCP的作者)