使用7-zip提取压缩包文件目录

下载一个包含大量文档的种子文件,里面包含很多个zip压缩包,每一个zip压缩包都包含大量txt、pdf、doc的文件。所有的zip压缩包采用极限压缩的格式,压缩率高达35%-55%,且包含大量小文件,如果全部解压的话会占用大量硬盘空间。

由于不会马上阅读全部文档,所以准备按需提取文件,每次只解压提取一两个文件。但每个zip压缩包都包含大量文件,而且存在多层嵌套文件夹,找文件很不方便。

最近想到一个好办法:可以提前把压缩包中全部文档目录提取出来。在需要找书的时候,直接在文档目录中搜索“文档名”,定位好文件所在位置,然后再去对应压缩包中提取文件。

经过一番研究,发现目前电脑上已经安装的7z可以实现,通过7-zip命令行提取压缩包文件的目录信息。

安装7-zip

首先,需要电脑上安装7z软件,如果没有安装的可以去7z官网下载个exe安装包。
https://7-zip.org

把7z安装到系统路径

把7z安装到windows环境变量,以便在命令行直接运行7z.exe。如果不设置环境变量,那么输入7z的绝对路径C:\Program Files\7-Zip\7z.exe代替7z

设置方法如下(以win7为例):
选中“此电脑” → 右键“属性” → 左侧找到“高级系统设置” → 上方标签栏选择“高级” → 右下侧找到“环境变量” → 当前用户的“xx用户变量” → 单击“Path”项 → 点击下方“编辑”按钮 → 在“变量值”中添加7z路径C:\Program Files\7-Zip\① → 连点三次“确定” → 完成设置。

注意:

  • ①如果“Path”项中已有其他路径用英文“;”隔开,否则路径错误。

提取压缩包的目录信息

把7z安装到windows环境变量以后,在命令行输入以下指令提取压缩包的文件目录信息
7z l archive.7z > ArchiveList.txt
7z l archive.zip > ArchiveList.txt
7z l archive.rar > ArchiveList.txt

如果没有把7z添加到windows环境变量,则输入:
”C:\Program Files\7-Zip\7z.exe” l D:\压缩包1.zip > D:\压缩包1的目录信息.txt
代码说明:
7z或7z.exe==调用软件;
archive.7z==输入压缩包名称;
l ==list contents of archive;显示目录信息;
> ArchiveList.txt输出到名为ArchiveList.txt的文本文档中。

查找需要的文件

把所有压缩包的目录信息生成的ArchiveList.txt作为检索信息导入Archivarius 3000anytxt,就可以方便快捷的查找需要的文档了。