Windows下通过FTP自动上传和下载动态文件名

某个项目中每天会生成一个以文件名+日期.rar文件,如bcpdata2012-08-31.rar文件,动态的部分为日期部分,在windows环境变量中用 %date:~0,10% 表示,这个文件生成后要自动上传到FTP服务器,那么这要如何实现呢?以下是我查找到的有效方法,在此记录一下。

 @echo off

echo open ip地址> ftpcommand.txt
echo ftp用户名>>ftpcommand.txt
echo ftp密码>>ftpcommand.txt
echo lcd 本地存放待上传文件的路径>>ftpcommand.txt
echo cd FTP服务器上存放上传文件的路径>>ftpcommand.txt
if "%1" == "" pause
if "%1" == "get" echo get %2  %2>>ftpcommand.txt
if "%1" == "put" echo put %2 >>ftpcommand.txt
echo bye >>ftpcommand.txt
ftp -s:ftpcommand.txt

将以上脚本存为批处理.bat文件即可,如ftpcommand.bat,使用方法为
上传 :ftpcommand put bcpdata%date:~0,10%.rar
下载:ftpcommand get 
bcpdata%date:~0,10%.rar

%1表示批处理的第一个参数,即get或是put,%2表示要上传或下载的文件名,可使用 windows环境变量,这样就实现了动态文件名的上传或下载功能。
 
原文地址:https://www.cnblogs.com/seasonzone/p/4315292.html