进行压缩试运行(即无文件输出)

进行压缩试运行(即无文件输出)

有没有办法对 RAR 或 7-Zip 格式进行试运行压缩?(命令行就可以。)我想要得到的是准确的压缩大小估计。

我尝试在 WinRAR 和 7-Zip 中找到它的选项,甚至查看了它们的 CL 开关,但没有成功。

答案1

您可以使用gzip预览 zip 压缩(deflate)和xz预览 7zip 压缩(lzma),如下所示:

gzip -c $1  | wc -c
xz --format=lzma -c $1  | wc -c

可选地通过管道numfmt --to=iec使字节数易于读取。

请注意,它只适用于单个文件,并且计数缺少存档头。

您可以在以下位置找到 Windows 所需的所有二进制文件git sdk 包

答案2

我不熟悉 WinRAR 或 7-Zip,但快速浏览 WinRAR 的在线帮助建议您可以使用-P-inul标志将压缩输出定向到stdout。您可以将其传输到wc实用程序,该实用程序在 Linux 和 MacOS 上是标准的,并且作为 Windows 10 Windows Subsystem for Linux 的一部分在 Windows 上可用,或者操作系统utils(参见textutils包)。

例如:

rar -P -inul <rest of WinRAR parameters...> | wc -c

这将返回压缩文件写入磁盘后的字符数(字节数)。

相关内容