分享一个给项目打7z压缩包的批处理[2012-4-26更新]

利用7z的命令行独立版本7za.exe压缩解决方案。最新版的7za.exe可以从http://sourceforge.net/projects/sevenzip/获得,批处理内容:

@echo off
rem 说明:
rem 必选:将要压缩的文件夹名设置在“slnDir=”右边
rem 可选:将sln文件名(不含扩展名)设置在“slnFile=”右边
set slnDir=
set slnFile=
set output="%slnDir%.%date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,2%-%time:~3,2%-%time:~6,2%.Src.7z"
:: set output=%slnDir%_Src.7z
if "%slnFile%"=="" set slnFile=%slnDir%
set exe7z=7za.exe
set excludeFile=exclude.txt
title 制作备份
cls
if "%slnDir%"=="" goto :ERR1
if not exist %slnDir% goto :ERR1
if not exist %exe7z% goto :ERR2
:: color
if exist %excludeFile% goto :COMPRESS
echo bin\>%excludeFile%
echo obj\>>%excludeFile%
echo PerformanceLogs\>>%excludeFile%
echo %slnFile%.suo>>%excludeFile%
echo _ReSharper.%slnFile%>>%excludeFile%
::echo %slnFile%.5.1.ReSharper.user>>%excludeFile%
::echo %slnFile%.sln.cache>>%excludeFile%
echo Thumbs.db>>%excludeFile%
echo 已经生成排除清单文件%excludeFile%,是现在要编辑它?
set /p tmpCont=请选择(y-编辑,N-不编辑继续执行)?
if "%tmpCont%"=="y" goto :EDITEXCLUDEFILE
if "%tmpCont%"=="Y" goto :EDITEXCLUDEFILE
:COMPRESS
title 正在备份:%output%
if exist %output% del %output% /F /Q
%exe7z% a -t7z -mx=9 %output% %slnDir%\ -xr@%excludeFile% -scsWIN
echo 输出文件:%output%
title 备份完成:%output%
set /p key=按回车键退出...
goto :END
:EDITEXCLUDEFILE
start "" %windir%\notepad.exe %excludeFile%
goto :END
:ERR1
title 错误 - 制作备份
color 0E
echo 错误:源文件夹:“%slnDir%” 不存在!
echo.
echo 请修改slnDir变量,保存后重试。
echo.
echo 按任意键开始编辑...
pause>nul
start "" %windir%\notepad.exe "%~0"
goto :END
:ERR2
title 错误 - 制作备份
color 0E
echo 错误:压缩软件:“%exe7z%”不存在!
echo.
echo 请检查7z压缩软件,或者编辑批处理修改exe7z变量。
echo.
echo 按任意键退出...
pause>nul
goto :END
:END

更新:

  • 调用7za压缩时加上scsWIN参数,使它支持包含中文信息的排除清单文件exclude.txt
  • 可以单独指定项目文件名slnFile,当被压缩目录与项目名不同名时有用
  • 首次生成exclude.txt文件时提供手动编辑它的机会,比如:这时您可以手动加入排除:.svn\
  • 增加PerformanceLogs\排除项,去除Resharper 5相关的排除项

 

保存为“制作备份.bat”后,将它们与项目文件夹放在一起。

第一次使用时,请修改“制作备份.bat”中的第3行,等号右侧填入你的项目文件夹名称。

双击它,会生成一个排除压缩列表文件:exclude.txt(可以手动修改它,定制排除压缩的内容)以及你的项目压缩文件包“项目名.日期和时间.Src.7z”。

压缩完成后,命令提示窗口标题栏会显示“备份完成:<输出的文件名称>”

 

注:生成文件的“日期和时间”会根据系统环境的配置不同而改变,如果发现它有问题,请自行更改,将第5行行首的“rem ”去掉,使用%slnDir%_Src.7z作为输出文件名。

 

 

--------------

 

下载:

项目备份批处理.zip

(含一个7z v9.20命令行独立压缩工具:“7za.exe”以及批处理“制作备份.bat”)

http://m2nlight.ys168.com/

Tools目录下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值