找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30495|回复: 4

[文件操作] 如何用BAT从A服务器上传文件到B服务器FTP目录

[复制链接]
发表于 2017-6-23 09:59:09 | 显示全部楼层 |阅读模式
想实现数据库自动异地备份 A服务器每天自动备份  想用BAT 自动上传当天数据库文件到B服务器FTP里  代码应该怎么写  然后把BAT文件加入任务计划就可以实现数据库自动异地备份

A服务器数据库文件目录在d:\数据库文件   xayy_backup_2017_06_20_000002_1211708.bak          B服务器ftp:192.168.0.200   账号 admin  密码user   上传在bf目录下   代码应该怎么写

谢谢大家
 楼主| 发表于 2017-6-23 10:31:51 | 显示全部楼层
回复 1# regedit



我在CMD里手动运行可以上传  在批处理就不行了   求大神帮忙  测试好后红包感谢
发表于 2017-6-23 10:58:02 | 显示全部楼层
参考一下别人的例子:
http://www.bathome.net/forumdisp ... =type&typeid=53

如果还是有问题,把你的代码发出来。
 楼主| 发表于 2017-6-23 11:26:09 | 显示全部楼层
谢谢管理员  搞定了    复制别人的代码 稍微修改 可以上传 当天的文件到B服务器
  1. @echo off
  2. CLS
  3. title xxx数据库文件异地备份
  4. ECHO ★☆xxx数据库文件异地备份中……★☆
  5. color a

  6. @echo off
  7. setlocal
  8. set username=admin
  9. set passwd=admin
  10. set ipadr=192.168.0.6
  11. set dir_path=e:\123\syxx_backup_%date:~0,4%_%date:~5,2%_%date:~8,2%*.bak

  12. echo.
  13. echo open %ipadr% >ftp.tmp
  14. echo user %username% >>ftp.tmp
  15. echo %passwd%>>ftp.tmp
  16. for /f "tokens=*" %%a in ('dir /a-d/s/b "%dir_path%"') do (
  17. echo send "%%a" >>ftp.tmp
  18. )

  19. echo bye >>ftp.tmp
  20. ftp -n -s:ftp.tmp
  21. del /q /s ftp.tmp>nul
  22. endlocal
复制代码
对BAT不是很懂
for /f "tokens=*" %%a in ('dir /a-d/s/b "%dir_path%"') do (
echo send "%%a" >>ftp.tmp
)    这句是不是 很懂  只知道dir 和dir_path 的意思

不过可以实现每天自动异地备份啦:lol  谢谢管理员
发表于 2017-6-23 11:44:15 | 显示全部楼层
回复 4# regedit


    获取文件列表放到临时文件ftp.tmp里面,后面再通过ftp命令去执行。你打开ftp.tmp看看里面的内容就大致明白了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 20:02 , Processed in 0.009545 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表