新建一个bat,随便名字如download.bat,敲入如下代码:
set ymd=%date:~0,10%
md “C:\backup\%ymd%”
cd C:\backup\%ymd%
@echo off
echo open 127.0.0.1 >ftp.src
echo username >>ftp.src
echo password >>ftp.src
echo cd “/%ymd%/”>>ftp.src
echo prompt n>>ftp.src
echo type binary>>ftp.src
echo runique y>>ftp.src
echo mget *>>ftp.src
echo bye>>ftp.src
ftp -s:ftp.src
del ftp.src
解释:
红色部分用真实的ftp地址,用户名,密码代替。代码解释:
- 首先在本地新建一个以当天日期为名的文件夹
- 然后生成一个ftp.src 的临时文件,这个文件有ftp操作的步骤,注意,要用另外一个文件存储ftp命令(FTP命令详解 )。
- 使用ftp.src文件链接ftp 服务器,开始下载
- 下载完成,删除临时文件ftp.src
还有几点需要注意的是,为什么要生成临时文件又删除?其实做成单独的文件也可以,但是这个ftp脚本限制了下载的文件只能存储在当前批处理脚本的路 径下,而我希望按每天的日期来分别下载。而ftp命令中并不支持诸如%date:~0,10%这样的环境变量。所以这里就耍了一个小聪明。每天生成当天文 件夹和当天脚本->下载好文件->删除脚本。如果你不用日期分割,可以把echo部分抽出来写一个文件。