标题: [文件操作] 如何用BAT从A服务器上传文件到B服务器FTP目录 [打印本页]
作者: regedit 时间: 2017-6-23 09:59 标题: 如何用BAT从A服务器上传文件到B服务器FTP目录
想实现数据库自动异地备份 A服务器每天自动备份 想用BAT 自动上传当天数据库文件到B服务器FTP里 代码应该怎么写 然后把BAT文件加入任务计划就可以实现数据库自动异地备份
A服务器数据库文件目录在d:\数据库文件 xayy_backup_2017_06_20_000002_1211708.bak B服务器ftp:192.168.0.200 账号 admin 密码user 上传在bf目录下 代码应该怎么写
谢谢大家
作者: regedit 时间: 2017-6-23 10:31
回复 1# regedit
我在CMD里手动运行可以上传 在批处理就不行了 求大神帮忙 测试好后红包感谢
作者: Batcher 时间: 2017-6-23 10:58
参考一下别人的例子:
http://www.bathome.net/forumdisp ... =type&typeid=53
如果还是有问题,把你的代码发出来。
作者: regedit 时间: 2017-6-23 11:26
谢谢管理员 搞定了 复制别人的代码 稍微修改 可以上传 当天的文件到B服务器- @echo off
- CLS
- title xxx数据库文件异地备份
- ECHO ★☆xxx数据库文件异地备份中……★☆
- color a
-
- @echo off
- setlocal
- set username=admin
- set passwd=admin
- set ipadr=192.168.0.6
- set dir_path=e:\123\syxx_backup_%date:~0,4%_%date:~5,2%_%date:~8,2%*.bak
-
- echo.
- echo open %ipadr% >ftp.tmp
- echo user %username% >>ftp.tmp
- echo %passwd%>>ftp.tmp
- for /f "tokens=*" %%a in ('dir /a-d/s/b "%dir_path%"') do (
- echo send "%%a" >>ftp.tmp
- )
-
- echo bye >>ftp.tmp
- ftp -n -s:ftp.tmp
- del /q /s ftp.tmp>nul
- endlocal
复制代码
对BAT不是很懂
for /f "tokens=*" %%a in ('dir /a-d/s/b "%dir_path%"') do (
echo send "%%a" >>ftp.tmp
) 这句是不是 很懂 只知道dir 和dir_path 的意思
不过可以实现每天自动异地备份啦:lol 谢谢管理员
作者: Batcher 时间: 2017-6-23 11:44
回复 4# regedit
获取文件列表放到临时文件ftp.tmp里面,后面再通过ftp命令去执行。你打开ftp.tmp看看里面的内容就大致明白了。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |