批处理使用WinRAR压缩某类型的文件,一个文件压缩成一个压缩包,压缩后名称与原文件同名,压缩后删除原文件

@echo offsetlocal enabledelayedexpansionrem winrar安装目录,我的在D盘且目录为下cd D:\Program Files\WinRARrem 需要压缩的文件所在目录set a=D:\dmpset c=0for %%k in (%a%\*.sql*) do (set /a c+=1WinRAR a -r -ep "%~dp0%%~nk.rar" "%%k" -ibck -m5cls&echo.&echo 正在处理第!c!个文件del %%k)echo.echo 完成,按任意键退出&pause >nulexit

注: 
%a%*.sql*:匹配D:\dmp目录下所有后缀为.sql 的文件 
%%k:在D:\dmp目录下匹配到的文件 
%~dp0%%~nk.rar:获取原文件名称不带后缀 
%%k:获取原文件名称带后缀 
del %%k:删除原文件

相关文章