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

Posted 癫狂编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理使用WinRAR压缩某类型的文件,一个文件压缩成一个压缩包,压缩后名称与原文件同名,压缩后删除原文件相关的知识,希望对你有一定的参考价值。

@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:删除原文件

以上是关于批处理使用WinRAR压缩某类型的文件,一个文件压缩成一个压缩包,压缩后名称与原文件同名,压缩后删除原文件的主要内容,如果未能解决你的问题,请参考以下文章

批处理winrar命令 ,如何批量解压缩到每个单独的文件夹?

使用commons-compress压缩的zip,用winrar解压出错?

winrar命令行如何编写

用批处理(vbs也行)控制winrar,将拖到批处理文件上的压缩包,进行修改,把压缩包里ABC文件夹中的文件修

WinRar和7-zip压缩比较

ZIP格式的文件下载后怎么解压?