前言
工作中一直在使用一个部署系统WinServer远程部署系统(RDSystem),部署、回滚都很方便。我们一直都是增量发布或者只更新需要更新的文件,每次发布完之后要整理出一个增量更新包,压缩成zip格式上传到部署系统再做分发。一般要点击20次鼠标才能把bin、area、scripts等目录下的文件复制到发布目录,这里写几个批处理文件提高效率。
发布所有文件
@echo off cls set spath=D:WebSitehaopin.Bms.Web set tpath=D:WebSite发布_baoms.abc.comzhaopinprjwebprj.netaoms.abc.com echo 开始打包............................. echo echo 发布目录:%spath% echo 打包目录:%tpath% echo echo '复制bin目录' xcopy %spath%inzhaopin.* /s %tpath%in /y /I /Q echo '复制Areas目录' xcopy %spath%Areas /s %tpath%Areas /y /I /Q echo '复制ConfigsData目录' xcopy %spath%ConfigsData /s %tpath%ConfigsData /y /I /Q echo '复制ScriptsRC目录' xcopy %spath%ScriptsRC /s %tpath%ScriptsRC /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 '复制TemplateTodo' xcopy %spath%TemplateTodo /s %tpath%TemplateTodo /y /I /Q PAUSE
只发布bin文件夹
@echo off cls set spath=D:WebSitehaopin.Bms.Web set tpath=D:WebSite发布_baoms.abc.comzhaopinprjwebprj.netaoms.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%inzhaopin.* /s %tpath%in /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命令,所以最后柳暗花明啊。