SVN dump增量备份的bat脚本

echo 备份开始……

定义将要备份的仓库路径

set SVN_DIR=E:\Repositories\test-backup

获取版本记录文件中,上次写入的版本号(起初手动在svn的bin目录下创建test_back_version.txt,或者建在其他目录下,执行脚本前先跳转到txt文档所在的目录)

set /p last_version=<test_back_version.txt

去掉从txt中获取到参数的空格

set "last_version=%last_version: =%"
echo 最后一次记录的版本号是:%last_version%

查出最新版本号,并把最新版本赋值给一个变量(把固定值赋值给变量,需要用for循环)

for /F %%i in ('svnlook youngest %SVN_DIR%') do ( set latest_version=%%i)

显示通过for循环取出的最新版本号

echo 最新版本号为:%latest_version%

定义备份时间

set back_time=%date:0,4%%date:5,2%%date:8,2%%time:0,2%%time:3,2%%time:6,2%

执行备份,备份文件后缀加上备份时间
svnadmin dump %SVN_DIR% -r %last_version%:%latest_version% > E:\test-backup\test_back_%back_time%

判断如果备份成功,将最新版本号写入txt文件进行记录;否则显示failed
if %errorlevel% == 0 (
  echo %latest_version% >test_back_version.txt
)else (echo failed)
pause

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容