如何提取此文件夹子目录中的所有档案?

18 windows batch

如何提取文件夹中子目录中包含的多个档案,将结果输出回档案所在的文件夹。

小智 23

首先,安装7-zip

bat在包含许多子目录的目录的根目录中创建一个文件,其中包含存档。然后粘贴以下内容:

FOR /D /r %%F in ("*") DO (
    pushd %CD%
    cd %%F
        FOR %%X in (*.rar *.zip) DO (
            "C:\Program Files\7-zip\7z.exe" x "%%X"
        )
    popd
)
Run Code Online (Sandbox Code Playgroud)

启动 bat,所有 rar/zip 文件都会被解压到它们所在的文件夹中。

这是如何运作的?

FOR /D /r %%F in ("*") DO (

For 循环遍历当前目录中的所有文件夹,并将路径放入变量%%F.

推 %CD%

将我们所在的当前目录放入内存中。

cd %%f

将变量中的文件夹设置%%F为当前目录。

FOR %%X in (*.rar *.zip) DO (
Run Code Online (Sandbox Code Playgroud)

对于当前文件夹中的所有rarzip文件,请执行以下操作:

"C:\Program Files\7-zip\7z.exe" x "%%X"
Run Code Online (Sandbox Code Playgroud)

对文件运行 7-zip。周围需要引号,%%X因为某些文件名中包含空格。

popd
Run Code Online (Sandbox Code Playgroud)

返回到我们之前存储在内存中的上一个目录。

希望这对某人有用。