问题
前几天实现了任务定时备份并删除过期sql的批处理,详情见Mysql:任务计划程序实现数据库定是备份;
领导看着不错,说把应用也备份一下,备份十天,自动删除10天前的文件夹;
网上搜了一下,定时删除文件夹的文章都没有;
才有了以下的文章。
思路
- 获取日期参数拼到文件夹名称后面便于区分
- 生成文件夹
- 将数据拷贝到文件夹
- 定时删除过期文件夹
实现
1)批处理文件如下:
```
rem ******Root backup start******
@echo off
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"
forfiles /p "D:\root_Backup" -d -10 /c "cmd /c RD /s/q @path"
mkdir d:\root_Backup\root_Backup_%Ymd%
xcopy D:\apache-tomcat-7.0.63\webapps\root D:\root_Backup\root_Backup_%Ymd% /e/h/r/y
@echo on
rem ******Root backup end******
```
-
获取日期参数拼到文件夹名称后面便于区分;
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"
-
生成文件夹
mkdir d:\root_Backup\root_Backup_%Ymd%
-
将数据拷贝到文件夹
xcopy D:\apache-tomcat-7.0.63\webapps\root D:\root_Backup\root_Backup_%Ymd% /e/h/r/y
-
定时删除过期文件夹
forfiles /p "D:\root_Backup" -d -10 /c "cmd /c RD /s/q @path"
注意:删除文件夹使用的是
RD
不是del