window svn backup.bat

时间:2023-03-09 08:21:56
window svn backup.bat
help
command /?
call /? %cd% 可以用在批处理文件中,也可以用在命令行中;展开后,是驱动器盘符:+当前目录,如在dos窗口中进入c:\dir目录下面, %0代指批处理文件自身
%~d0 是指批处理所在的盘符
%~dp0 是盘符加路径 cd %~dp0 就是进入批处理所在目录了
at 23:30 /every:M,T,W,Th,F,S,Su  "E:\svn-backup.bat"

rem svn-backup.bat
echo off
rem Subversion的安装目录
set SVN_HOME="C:\Program Files\VisualSVN Server"
rem 所有版本库的父目录
set SVN_ROOT=E:\Repositories
rem 备份的目录
set BACKUP_SVN_ROOT=G:\svnbak
set BACKUP_DIRECTORY=%BACKUP_SVN_ROOT%\%date:~0,4%-%date:~5,2%-%date:~8,2%
if exist %BACKUP_DIRECTORY% goto checkBack
echo 建立备份目录%BACKUP_DIRECTORY%>>%SVN_ROOT%\backup.log
md %BACKUP_DIRECTORY%
rem 验证目录是否为版本库,如果是则取出名称进行SVN备份
for /r %SVN_ROOT% %%I in (.) do @if exist "%%I\conf\svnserve.conf" %SVN_ROOT%\simpleBackup.bat "%%~fI" %%~nI
goto end
:checkBack
echo 备份目录%BACKUP_DIRECTORY%已经存在,请清空。
goto end
:end rem simpleBackup.bat
@echo 正在备份版本库%1......
@%SVN_HOME%\bin\svnadmin hotcopy %1 %BACKUP_DIRECTORY%\%2
@echo 版本库%1成功备份到了%2! 来源:http://zhidao.baidu.com/link?url=RIWqDMmK74jS33tIkzzLKNpZQAV-qVcPOJ7OCzrvm-rag-i-h1S-WPpWwzlsTLMN9ZK_4DzMRMJZUyMIFqho8b9mFEKWTNMH6F4PJiu4PeG