WinServer远程部署系统打包批处理文件
前言
工作中一直在使用一个部署系统WinServer远程部署系统(RDSystem),部署、回滚都很方便。我们一直都是增量发布或者只更新需要更新的文件,每次发布完之后要整理出一个增量更新包,压缩成zip格式上传到部署系统再做分发。一般要点击20次鼠标才能把bin、area、scripts等目录下的文件复制到发布目录,这里写几个批处理文件提高效率。
发布所有文件
@echo off cls set spath=D:\WebSite\Zhaopin.Bms.Web set tpath=D:\WebSite\发布_baoms.abc.com\zhaopinprj\webprj.net\baoms.abc.com echo 开始打包............................. echo echo 发布目录:%spath% echo 打包目录:%tpath% echo echo '复制bin目录' xcopy %spath%\bin\zhaopin.* /s %tpath%\bin /y /I /Q echo '复制Areas目录' xcopy %spath%\Areas /s %tpath%\Areas /y /I /Q echo '复制Configs\Data目录' xcopy %spath%\Configs\Data /s %tpath%\Configs\Data /y /I /Q echo '复制Scripts\RC目录' xcopy %spath%\Scripts\RC /s %tpath%\Scripts\RC /y /I /Q echo '复制Content' xcopy %spath%\Content /s %tpath%\Content /y /I /Q /EXCLUDE:exclude.txt echo '复制Views' xcopy %spath%\Views /s %tpath%\Views /y /I /Q echo '复制Template\Todo' xcopy %spath%\Template\Todo /s %tpath%\Template\Todo /y /I /Q PAUSE
只发布bin文件夹
@echo off cls set spath=D:\WebSite\Zhaopin.Bms.Web set tpath=D:\WebSite\发布_baoms.abc.com\zhaopinprj\webprj.net\baoms.abc.com echo 开始打包............................. echo echo 发布目录:%spath% echo 打包目录:%tpath% echo cd /d %tpath% del /S /Q *.* for /d %%i in (*) do rd /s /q "%%i" echo '复制bin目录' xcopy %spath%\bin\zhaopin.* /s %tpath%\bin /y /I /Q PAUSE
首先删除所有文件,然后复制bin目录。
压缩成zip文件
@echo off cls zip -r 10034-baolong.zhao-%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%.zip zhaopinprj PAUSE
zip是系统自带的命令。这里走了个弯路开始使用的winrar的命令行rar.exe压缩,可惜的是命令行版本不支持zip格式。后来想过用7z、360压缩,无意间发现从xp开始就有了zip命令,所以最后柳暗花明啊。