批量解压当前目录下的zip文件_循环执行

时间:2024-03-24 17:09:46

        今天同事遇到一个问题,需要解压别人不定时推送过来的zip文件,说是可以通过windows的批处理来完成,于是在网上搜索了一些资料,完成了这个小需求。第一次学习bat,在此记录一下,方便以后查询。

       以下是bat文件的全部内容,请将下面的内容拷贝到一个记事本里,然后把扩展名更改为bat就可一直运行(注意文件名为RepeatUnRAR,可自行修改),我已加了注释 


@echo off

@title 批量解压当前目录下的zip文件_循环执行___请不要关闭
rem 这是一行注释,不会显示
rem 用if exist *.zip判断该文件夹下是否存在zip文件,存在则执行解压,解压完毕后删除zip文件,然后再运行RepeatUnRAR批处理文件
rem "%rar%" x -ad -y *.zip是解压该文件夹下的所有zip文件到D:\zipall\unzipall
rem 若要解压rar格式的压缩文件则把*.zip更改为*.rar即可,即:%rar%" x -ad -y *.rar,其他不变

rem &del *.zip是删除该文件夹下的所有zip文件,注意必须要有连接字符&,&表示前面执行完成后接着执行下面的语句

rem &start "" /b /wait "unrar.bat"是运行unrar.bat文件或其他可执行文件的语句,也要注意加上符号&批量解压当前目录下的zip文件_循环执行

set "rar=C:\Program Files\WinRAR\WinRAR.exe"

if exist *.zip (
    "%rar%" x -ad -y *.zip  D:\zipall\unzipall &del *.zip &start "" /b /wait "RepeatUnRAR"
) else (
    start "" /b /wait "RepeatUnRAR"
)
@echo on