Board logo

标题: [代码合集] 批处理命令FTP怎样上传指定文件名的文件? [打印本页]

作者: tianhanlove    时间: 2012-7-9 11:36     标题: 批处理命令FTP怎样上传指定文件名的文件?

现在我A服务器F:\backup下有一批文件,每天都会新增,现我想把每天新增的这个文件上传到FTP服务器F:\backup\Tools\目录上去,FTP服务器信息如下:
IP:192.168.2.50
账号:backup
密码:123
我做了下面的批处理,求高手帮忙看下,是哪边有问题,我执行后,在FTP服务器上并没有备份文件
  1. @echo 开始检查备份%date% %time%>>"1.log"
  2. call:开始获取待检查的文件名
  3. call:开始备份文件至FTP
  4. @echo 结束检查备份%date% %time%>>"1.log"
  5. exit
  6. goto :eof
  7. :开始获取待检查的文件名
  8. (for /f "delims=" %%a in ('dir /a-d /b /o-d /s F:\backup\*.*') do @echo %%a&goto :eof)
  9. >"Backup_Processing.txt"
  10. goto :eof
  11. :开始备份文件至FTP
  12. CD /D D:\Backup_Processing
  13. set /p localfile=<Backup_Processing.txt
  14. >D:\Backup_Processing\Backup_FTP.ftp ECHO OPEN 192.168.2.50
  15. >>D:\Backup_Processing\Backup_FTP.ftp ECHO backup
  16. >>D:\Backup_Processing\Backup_FTP.ftp ECHO 123
  17. >>D:\Backup_Processing\Backup_FTP.ftp ECHO BIN
  18. >>D:\Backup_Processing\Backup_FTP.ftp ECHO CD Tools
  19. >>D:\Backup_Processing\Backup_FTP.ftp ECHO PUT %localfile%
  20. >>D:\Backup_Processing\Backup_FTP.ftp ECHO BYE
  21. FTP -V -I -S:"D:\Backup_Processing\Backup_FTP.ftp"
  22. DEL D:\Backup_Processing\Backup_FTP.ftp /F /Q
  23. goto :eof
复制代码
执行后,目录下产生的Backup_FTP.ftp文件中内容是这样的:
  1. OPEN 192.168.2.50
  2. backup
  3. 123
  4. BIN
  5. CD Tools
  6. PUT F:\backup\DMS_CVS.0.DB2.NODE0000.CATN0000.20120708213006.001
  7. BYE
复制代码
我手工在CMD窗口中,跑Backup_FTP.ftp是没有问题的,可以实现

PS:本地服务器和FTP服务器是windows环境。
作者: doslike    时间: 2012-7-9 17:24

标签换成英文名 试一试
作者: forfiles    时间: 2012-7-9 23:29

执行到第几行开始报错的?
报错信息是什么?
作者: tianhanlove    时间: 2012-7-10 14:01

回复 3# forfiles


    谢谢各位,昨天下午,我找到问题所在了,把FTP -v -i -s 改小写,就没问题,真没搞懂,这和大小写还有关系。。。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2