Board logo

标题: [求助]怎样确认ftp已经成功把文件下载到本地 [打印本页]

作者: qdtong     时间: 2008-7-19 00:30    标题: [求助]怎样确认ftp已经成功把文件下载到本地

[求助]怎样确认ftp已经成功把文件下载到本地,然后再送Email notification.?

各位老大帮忙,怎样把确认FTP成功的batch加在下面. 因为ftp密码被强制一定时期更换, 所以我想确认ftp成功下载到文件.然后再送Email.(现在是即使密码错误,Email还是送出)

文件下载后日期是当天日期,是否应该在这上面想办法?
怎样在FTP部分和Email部分之间加上确认batch?(data.txt在同一目录,工作正常)


@echo OFF
ftp -is:data.txt 10.10.10.2




set year=%date:~-4,4%
set month=%date:~-10,2%
set day=%date:~-7,2%
set hour=%time:~-11,2%
set minute=%time:~-8,2%
Set currenttime=%month%-%day%-%year%@%hour%:%minute%

set to=zh@hotmail.com
set mailserver=10.10.2.100
set from=noreplay@123.com
set username=username
set password=password

:email_notifications
set subject="work completed at %currenttime% "
set body= "Don't replay this Email"
blat -to %to% -subject %subject% -body %body% -server %mailserver% -f %from% -u %username% -pw %password%
exit


谢谢了
作者: qdtong     时间: 2008-7-19 02:31
Anybody help?
作者: lxmxn     时间: 2008-7-19 19:05
if exist yourfiles (do some commands if the ftp command is  complete successfully...) else (do other commands...)
作者: HAT     时间: 2008-7-19 19:48

@echo off
set SrcDir=C:\test
for /f "delims=/" %%a in ('dir /b /od *.txt') do set last=%%a
set last=C:\test\%last%
set last=%last:\=\\%
echo %last%
for /f "tokens=2 delims==" %%a in ('wmic path win32_operatingsystem get LocalDateTime /value') do set today=%%a
for /f "tokens=2 delims==" %%a in ('wmic path CIM_logicalfile where name^="%last%" get CreationDate /value') do set fileday=%%a
set today=%today:~,8%
set fileday=%fileday:~,8%
if %today% equ %fileday% (
  echo 文件下载后日期是当天日期
) else (
  echo ftp下载失败
)

作者: qdtong     时间: 2008-7-21 22:53
Thank you all, i will try it.