复制如下代码,另存为bat格式的文件即可!
@echo off
title 批量解压rar文件
color 0a
rem *********************************************************
rem 在注册表中读取winrar的安装目录
rem 如果已经存在临时文件,把它删除
if EXIST tmp.大众 del tmp.大众
rem 查询注册表中的winrar的路径值,并把它发送到临时文件中
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe" /v path>>tmp.大众
rem 用For命令从临时文件中读取winrar的路径值,并把它保存到变量 WinRAR 中
for /f "tokens=1,2,* skip=4 delims= " %%j in ('more tmp.大众') do set WinRAR=%%l
rem 如果已经存在临时文件,把它删除
if EXIST tmp.大众 del tmp.大众
rem *********************************************************
rem 用dir命令列出当前目录下的所有目录
rem 并把它发送到for循环中,然后在for循环中调用压缩的子过程
for /f "delims=" %%i in ('dir /ad /b') do call :ss %%i
cls
echo ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
echo.
echo 操作成功结束,请按任意键退出该批处理...
echo.
echo ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
PAUSE>nul
exit
:ss
set var=%*
rem 即 rar a -r 压缩后的文件名.rar 目录名
"%WinRAR%\rar" a -r %var%.rar %var%
EndLocal
应用范围:将与该BAT文件同一路径(不包括父级路径)的所有目录进行压缩!