svnadmin hotcopy 全量拷贝模式
echo on
rem 所有版本库的父目录
set SVN_ROOT=E:\svn\Repositories
rem 备份的目录
set BACKUP_SVN_ROOT=E:\svn\Backup
rem 获取当前系统日期和时间用来创建目录,格式:年月日_时分秒毫秒。如:20131129_16275274
set BACKUP_DIRECTORY=%BACKUP_SVN_ROOT%\%date:~,4%%date:~5,2%%date:~8,2%_%time:~,2%%time:~3,2%%time:~6,2%%time:~9,2%
rem指定备份文件删除时间(单位:天)。0 - 32768 范围内的任何数字。
set NUM=7
if exist %BACKUP_DIRECTORY% goto checkBack
rem 建立备份目录%BACKUP_DIRECTORY%>>%SVN_ROOT%/backup.log
mkdir %BACKUP_DIRECTORY%
rem 验证目录是否为版本库,如果是则取出名称备份
for /r %SVN_ROOT% %%I in (.) do @if exist "%%I/conf/svnserve.conf" svnadmin hotcopy %%~fI %BACKUP_DIRECTORY%/%%~nI
rem 删除过期备份
echo 删除n天前所有的文件 %NUM%
forfiles /p %BACKUP_SVN_ROOT% /d -%NUM% /c "cmd /c rd /q /s @path\"
echo 正在执行逻辑删除,请稍等…
pause
echo 任务完成!
exit