使用 7z 脚本文件递归地提取多个 zip 文件

Extract multiple zip files recursively using 7z script file

我有一个文件夹,在多个文件夹中有多个 zip 文件,我想使用脚本文件将其全部解压

我从这里查看了堆栈溢出的答案https://superuser.com/questions/248287/extract-recursively-using-7-zip

FOR /F "usebackq" %a in (`DIR /s /b *.zip`) do 7z.exe e %a

它提取得很好,问题是它正在将所有文件提取到根文件夹中,我希望每个 zip 都被提取到 .zip 文件旁边的原始文件夹中

意思是在\folder\file.zip旁边 我会有

\folder\file.zip
\folder\content_of_zip.txt

7z 包含一个开关以指示提取文件的位置。我们可以用它来表示for命令所引用的文件的驱动器和路径。

for /r %a in (*.zip) do 7z.exe e "%~a" -o"%~dpa"