在 Raspbian 上解压 .crx 文件不起作用,但在 macOS 上可以

在 Raspbian 上解压 .crx 文件不起作用,但在 macOS 上可以

我正在尝试在 Raspberry Pi 上解压缩 Chrome 扩展 CRX 文件(我理解它们基本上是 ZIP 文件):

$ unzip -u -q cjpalhdlnbpafiamejdnhcphjbkeiagm.crx
warning [cjpalhdlnbpafiamejdnhcphjbkeiagm.crx]:  1322 extra bytes at beginning or within zipfile
  (attempting to process anyway)
error: invalid zip file with overlapped components (possible zip bomb)
$ unzip -v
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.

但这在 macOS 上是可行的:

$ unzip -u -q cjpalhdlnbpafiamejdnhcphjbkeiagm.crx
warning [cjpalhdlnbpafiamejdnhcphjbkeiagm.crx]:  1322 extra bytes at beginning or within zipfile
  (attempting to process anyway)
$ unzip -v
UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send
bug reports using http://www.info-zip.org/zip-bug.html; see README for details.

CRX 文件的 MD5 值相同。因此,看起来虽然程序的版本相同,但它们的工作方式不同。

还有其他方法可以在 Pi 上提取该文件吗?

我尝试安装p7zip,但是也不起作用:

$ 7zr e cjpalhdlnbpafiamejdnhcphjbkeiagm.crx

7-Zip (a) [32] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,32 bits,4 CPUs LE)

Scanning the drive for archives:
1 file, 3033491 bytes (2963 KiB)

Extracting archive: cjpalhdlnbpafiamejdnhcphjbkeiagm.crx
ERROR: cjpalhdlnbpafiamejdnhcphjbkeiagm.crx
Can not open the file as archive

为了测试,你可以下载扩展从这里使用uBlock Origin 的 URL

答案1

unzip 和 p7zip 的这些版本似乎..非常过时了,我有点想知道 debian/raspian 和 mac 版本是否使用不同的标志或补丁完成。

无论如何 - 不要使用 p7zip。最近有一个适用于 Linux 的官方 7zip 版本 -您正在寻找控制台版本

对于 Raspbian,下载arm版本并解压:

wget https://www.7-zip.org/a/7z2201-linux-arm.tar.xz
mkdir 7z
mv 7z2201-linux-arm.tar.xz 7z
cd 7z
tar xvf 7z2201-linux-arm.tar.xz
sudo cp 7zz /usr/local/bin

然后您就可以7zz在您的系统上全局使用。

提取的语法如下:

7zz e -aoa -ocjpalhdlnbpafiamejdnhcphjbkeiagm cjpalhdlnbpafiamejdnhcphjbkeiagm.crx

并且可以很好地解压文件。-aoa允许覆盖输出文件,并-o设置输出目录名称。

答案2

我发现在 Raspbian 和 Ubuntu 下可行的替代方法是7z通过包提供的命令p7zip-full

sudo apt install p7zip-full
7z e -aoa -ocjpalhdlnbpafiamejdnhcphjbkeiagm cjpalhdlnbpafiamejdnhcphjbkeiagm.crx

这个版本也非常过时但至少它可以提取文件。

如果有人需要一个脚本来下载并提取适用于 macOS 和 Linux 的扩展,看这里

相关内容