适用于 Linux 的 7-zip 附加程序

适用于 Linux 的 7-zip 附加程序

我想将包含各种资源和可执行文件的文件夹打包成一个自解压文件,然后执行命令,例如“setup.exe”。我使用 7-Zip 的 SFX 模块(使用 7-zip 附加模块附带的“7zS.sfx”模块)成功实现了此操作。

但是,我的大部分开发工作都是在 Linux 上进行的,如果可能的话,我宁愿避免在 Wine 下运行 7-zip。在我看来,7-zip 附加功能仅适用于 Windows,除非我的搜索能力不行。有没有办法获取 Linux 的这些模块,或者至少是它们的源代码并尝试编译?

答案1

解决了这个问题,我可以简单地“cat”并从 Linux 本身生成 PE 可执行文件。如下所示:

# cat 7zS.sfx config.txt FILE.7z > FILE.exe

其中 7zS.sfx 是来自“extras”7-zip 包的 SFX 文件,“config.txt”是根据文档说明的配置文件,“FILE.7z”是使用原生 Linux p7z 生成的 7-zip 文件。

答案2

您只需unrar在命令行中使用来提取 sfx 包或将文件重命名为.rar扩展名并通过支持 rar 的 GUI 压缩/解压缩包打开它。

希望你已经知道了,但我发帖只是为了将来参考,

unrar x filename.ext

你应该在你的Linux机器上安装unrar。

答案3

解决此问题的正确方法是为 7z 提供适当的 .sfx 模块,但不幸的是,该模块通常不打包。因此,您必须手动下载 Windows 二进制文件(根据您的目标,是 32 位还是 64 位),使用类似“7z x 7z1900.exe”的东西提取它(二进制文件本身是 7z sfx),获取 7z.sfx 文件(注意:名称将来可能会更改)并通过命令行选项“7z -sfx7z.sfx ...”将其提供给您的 GNU/Linux 7z。

这样你就不用摆弄 config.txt

相关内容