@echo off setlocal enabledelayedexpansion rem winrar安装目录,我的在D盘且目录为下 cd D:\Program Files\WinRAR rem 需要压缩的文件所在目录 set a=D:\dmp set c=0 for %%k in (%a%\*.sql*) do ( set /a c+=1 WinRAR a -r -ep "%~dp0%%~nk.rar" "%%k" -ibck -m5 cls&echo.&echo 正在处理第!c!个文件 del %%k ) echo. echo 完成,按任意键退出&pause >nul exit
注:
%a%*.sql*:匹配D:\dmp目录下所有后缀为.sql 的文件
%%k:在D:\dmp目录下匹配到的文件
%~dp0%%~nk.rar:获取原文件名称不带后缀
%%k:获取原文件名称带后缀
del %%k:删除原文件