使用Bat自动打包并通过FTP发送到备份服务器——实战测试

Posted 疯刘小三

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Bat自动打包并通过FTP发送到备份服务器——实战测试相关的知识,希望对你有一定的参考价值。

这个bat文件要求本地安装有winrar解压软件,位置是:C:Program FilesWinRARWinRAR.exe

如果执行报错,请检查你复制我的代码是否有问题,有些复制粘贴进去后因为一些字符原因更改,粘贴后请检查是否和复制的一致。

 

rem 定时备份文件并FTP上传至备份服务器
rem 要备份的文件夹
set bak_webFile=D:Backup   ###目录包括一个斜杠都不能少
rem 临时文件夹
set bak_tmpFile=C:~UpTemprem 日志文件夹
set bak_logPath=C:~bak_logrem 生成的rar 文件名
set bak_bakFile=YYYYMMDD
rem 当前日期(格式YYYYMMDD)
set bak_date=%date:~0,4%%date:~5,2%%date:~8,2%
rem ftp信息
set bak_ftpServer=192.168.0.86    ##ftp的服务器ip地址
set bak_ftpUserName=idcicp        ##ftp的用户
set bak_ftpUserPass=idcicp        ###ftp的用户密码
set bak_timeStart=%time% 
md %bak_tmpFile%
md %bak_logPath%
echo -------- 开始压缩 [%bak_timeStart%] >%bak_logPath%log-%bak_date%.txt

"C:Program FilesWinRARWinRAR.exe" a -ag+%bak_bakFile% %bak_tmpFile% %bak_webFile% 

echo -------- 压缩完成,开始上传 [%time%/%bak_timeStart%] >>%bak_logPath%log-%bak_date%.txt
rem 生成ftp命令文件
echo open %bak_ftpServer% >ftp.up
echo %bak_ftpUserName%>>ftp.up
echo %bak_ftpUserPass%>>ftp.up
echo bin >>ftp.up
echo mkdir %bak_date% >>ftp.up
echo cd %bak_date% >>ftp.up
echo mput %bak_tmpFile%* >>ftp.up
echo bye >>ftp.up
FTP -s:ftp.up -i >>%bak_logPath%log-%bak_date%.txt
del ftp.up /q
del  %bak_tmpFile%* /q   ###删除临时压缩文件,避免磁盘空间占用

echo -------- 上传完成 [%time%/%bak_timeStart%] >>%bak_logPath%log-%bak_date%.txt

 

以上是关于使用Bat自动打包并通过FTP发送到备份服务器——实战测试的主要内容,如果未能解决你的问题,请参考以下文章

MySQL自动备份和下载备份到指定位置

Co. - Microsoft - Windows - 通过任务计划,备份本地MySQL,数据上传Linux备份服务器

使用python备份文件

用winrar和ftp命令实现自动备份文件并自动上传到指定的ftp服务器

云服务器文件怎么同步电脑?

Debian下自动备份文件并上传到远程FTP服务器且删除指定日期前的备份Shell脚本