7-zip真是强大的工具

最近我把最常用的压缩软件,由 WinRar 替换成了开源且免费的 7-zip,熟悉之后发现真是简洁又强大的工具。

比如,我有一个 6.05TB 的文件夹,里面约有 4 万个各种格式的文件,其中 7z 是最主要的格式,大约有 1.5 万个,分布在不同层级的子文件夹里。人工一个个操作显然是不现实的,如何使用 7-zip 找到指定目录及子目录下的所有 7z 压缩文件,并在原地解压?

用记事本创建一个bat文件,内容如下:

::设置解压软件所在的位置
set unzip="C:\7-Zip\7z.exe"

::设置要解压的文件夹根位置
set srcdir="D:\Your_Path"

::使用 for /r 递归遍历所有文件夹,对于 *.7z 文件使用命令行解压
for /r %srcdir% %%i in (*.7z) do %unzip% x "%%i" -o"%%~dpi" -aoa -y -pCODE

当运行这个 bat 批处理时,每发现一个 7z 文件,都会形成类似这样的命令:

C:\7-Zip\7z.exe x D:\Your_Path\test.7z -o‘D:\Your_Path’ -aoa -y -pCODE

简化亦即: 7z.exe x test.7z -o{path} -aoa -y -p{password}

其中参数:
x 是指解压;
-o 是指定输出目录;
-aoa 是指若有相同文件则默认覆盖;
-y 是若需交互均按 yes 处理;
-p 则是指定解压密码。
特别注意:-o -p 等参数后面直接跟内容,不要有空格。
以上参数均须按你的实际情况进行调整。

关于 7-Zip 命令行参数的更多详细说明,可以在安装目录里找到 7-zip.chm 查看,或请访问 7-Zip官网 https://www.7-zip.org/

# 如何使用 7-zip 批量解压文件夹及子文件夹内的所有压缩包

留下评论

电子邮件地址不会被公开。 必填项已用*标注