如何在不解压缩压缩文件的情况下列出压缩文件?

我怎样才能得到相当于 ls的。Zip 文件(不是 gzip) ,而不用解压缩它,从命令 shell?也就是说,如何列出压缩在。邮政档案?

105162 次浏览

使用 -l选项解压缩:

unzip -l file.zip

Perreal 的回答 是正确的,但是我建议安装 傻瓜(在您的发行版的软件包管理器中查找它)。然后,对于任何类型的归档文件,bzip2、 gzip、 tar... ... 您只需要记住一个命令:

als archive_name

您还可以使用“ zmore archive _ name”。 它将列出归档文件和它的内容。

在 Debian/Ubuntu 中使用 lesspipe,它还可以列出许多其他的归档类型:

     *.arj
*.tar.bz2
*.bz
*.bz2
*.deb, *.udeb
*.doc
*.gif, *.jpeg, *.jpg, *.pcd, *.png, *.tga, *.tiff, *.tif
*.iso, *.raw, *.bin
*.lha, *.lzh
*.pdf
*.rar, *.r[0-9][0-9]
*.rpm
*.tar.gz, *.tgz, *.tar.z, *.tar.dz
*.gz, *.z, *.dz
*.tar
*.jar, *.war, *.xpi, *.zip
*.zoo

用法:

lesspipe file.zip

参考文献

要在 Linux 主机上列出/查看压缩文件的内容而不解压缩它(以及安装 GZIP 的位置) ,请使用“ zcat”命令。

Zcat 压缩文件名 | 更多

zipinfo -1 filename.zip

它只返回文件名,不再返回示例(响应) :

listing.html
my_data.csv
super.txt

less实用程序能够查看 zip归档文件。

Unix 绑定的数量更少,也不需要安装 al。 输出是可滚动的(分页的) ,不会将内容记录到终端(不像另一个答案中提到的 unzip-l)。

根据 https://superuser.com/a/216675/249975,

因此,只需使用 less filename.zip

使用以下命令查看不解压缩的压缩文件的内容

unzip -l file.zip

我们可以使用 Gor tar 文件

zcat <archived-file>

我将添加以下选项,因为我发现对于我的目的来说,这是迄今为止最方便的方法(探索具有数万个文件和目录的2GB tar 的内容)。

使用 archivemount对我来说是最有用的方法。

执行情况如下:

mkdir mount-point
archivemount archive.tar.gz mountpoint
cd mount-point


umount mount-point

解释

您需要创建一个空文件夹作为挂载点。按照上面的示例,最简单的方法是在存储存档文件的文件夹中创建该文件夹。尽管你可以在任何地方创建它。只需在命令中相应地更改 mount-point

一旦你将 cd放入 mount-point文件夹,你将拥有一个普通的 Linux 文件夹和文件树,你可以使用任何命令来探索 Linux 中的文件夹和文件。非常方便。

完成后,使用 umount卸载归档文件

注意,您可能需要首先安装 archivemount

为什么我觉得这个这么有用

我基本上想要一种简单的方法来调查一个大的 tar 文件的内容。仅仅是文件夹和文件名的大量文本输出(成千上万行)对我来说并不特别有用。即使在找到了通过其他后处理器传送内容的方法之后。

您可以对 zip 文件、 tar 文件和那些用 gzip、 bzip 或者 press 压缩的文件使用这种方法。

archivemount的详细资料是 给你

一篇好的文章是 给你

这段引文(摘自那篇文章)总结了这个工具的灵活性:

[因为通过 FUSE 进行归档挂载]通过 Linux 内核公开其文件系统,所以您可以使用任何应用程序将文件直接加载并保存到这种挂载的归档文件中。这使您可以使用您最喜欢的文本编辑器,图像查看器,或音乐播放器的文件仍然在一个归档文件。更进一步,由于 archive emmount 还支持对某些归档格式的写访问,因此您也可以直接从归档文件内部编辑文本文件。

如果您想浏览单个压缩文件,请尝试使用 zless。当 zip 包含多个文件时,这可能不太有用。

根据手册页的说明:

Zless 是一个过滤器,它允许在软拷贝终端上一次检查一屏的压缩或纯文本文件。这相当于将环境变量 LESSOPEN 设置为’| gzip-cdfq -% s’,将环境变量 LESSMETACHARS 设置为’< new-line > ; * () < > [ | & ^ ‘ # $% = ~’,然后运行更少的。但是,似乎有足够多的人认为提供 zless 命令非常重要。

其他一些方便的“ z”实用程序是 zcat 和 zmore (在前面的答案中提到过)、 zdiff 和 zgrep。

关于回答最初的问题,如何查看 zip 的内容,我更喜欢 zipinfo 后面跟着 unzip-l。