如何使用与zip同名的winrar提取文件夹中的所有zip文件?

时间:2016-06-27 22:42:22

标签: windows loops batch-file unzip winrar

我需要迭代一个文件夹,对于每个zip文件,我需要使用它的名称来提取它。也就是说,如果它的test.zip然后它应该提取到测试文件夹。同样,它应该遍历我的文件夹及其子文件夹并提取内容。我编写了下面的代码,但它没有提取zip的名称。请指教。

cd %CD%\Setups
for /r %%i in ("*.zip") do (
   echo "%%~fi"
    "C:\Program Files (x86)\WinRAR\WinRAR.exe" a -afzip "%%~dpi" "%%~fi"
    echo came after unzipping
    del /S /Q "%%~fi"
)
exit \b

1 个答案:

答案 0 :(得分:1)

使用Winrar.exe提取zip文件的语法如下:

  

[path \ winrar.exe] x [zip文件的路径] [要提取的文件,。对全部   文件] [要提取到的路径文件夹]

@echo off
set winrar=%ProgramFiles%\WinRAR\WinRAR.exe
CD /D %CD%\Setups
for /f "delims=" %%i in ('Dir /b *.zip') Do ("%Winrar%" x "%%~fi" "%%~dpni\")
pause

编辑于2016年6月28日@ 13:35

如果您希望此切换-ibck在后​​台运行WinRAR,也可以添加

@echo off
set winrar=%ProgramFiles%\WinRAR\WinRAR.exe
CD /D %CD%\Setups
for /r %%i in ("*.zip") Do ("%Winrar%" x -ibck "%%~fi" "%%~dpni\")
pause