gpt4 book ai didi

bash - 如何解压缩管道 zip 文件(来自 "wget -qO-")?

转载 作者:行者123 更新时间:2023-11-29 08:43:44 25 4
gpt4 key购买 nike

关于如何像这样解压缩管道 zip 文件的任何想法:

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip

我希望将文件解压缩到一个目录,就像我们以前处理普通文件一样:

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip | unzip -d ~/Desktop

最佳答案

ZIP 文件格式在存档末尾包含一个目录(索引)。该目录说明每个文件在存档中的位置,因此允许快速、随机访问,而无需读取整个存档。

当尝试通过管道读取 ZIP 存档时,这似乎会造成问题,因为索引直到最后才被访问,因此在文件被完全读取并被读取之前,无法正确提取单个成员不再可用。因此,当通过管道提供存档时,大多数 ZIP 解压缩器都会简单地失败,这似乎不足为奇。

存档末尾的目录不是存档中存储文件元信息的唯一位置。此外,出于冗余目的,各个条目还将此信息包含在本地文件头中。

虽然不是每个 ZIP 解压器都会在索引不可用时使用本地文件头,但 libarchive 的 tar 和 cpio 前端(又名 bsdtar 和 bsdcpio)可以而且将会在通过管道读取时这样做,这意味着以下情况是可能的:

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip | bsdtar -xvf- -C ~/Desktop

关于bash - 如何解压缩管道 zip 文件(来自 "wget -qO-")?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7132514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com