DevToys Web Pro iconDevToys Web Pro博客
为我们评分:
试用浏览器扩展:

Bzip2 解压器

输入格式:
Base64 输入
  • 或拖放一个 .bz2 文件

    解压输出
  • 关于 Bzip2

    Bzip2 使用 Burrows-Wheeler 分块排序算法并结合 Huffman 编码,相比 gzip 能获得更好的压缩率,但代价是速度更慢且内存占用更高。

    • 在 Linux/macOS 上常用于单文件压缩(.bz2 扩展名)
    • 典型压缩效果:压缩率比 gzip 高 10–15%
    • CLI 压缩: bzip2 file.txt
    • CLI 解压: bunzip2 file.txt.bz2
    • 常与 tar 组合使用: tar -xjf archive.tar.bz2

    所有处理都在您的浏览器中完成——不会将任何数据发送到任何服务器。

    技术详情

    Bzip2 解压器的工作原理

    工具功能

    Bzip2 解压器可在浏览器中完整解码 .bz2 压缩文件,生成原始的未压缩内容。它在 JavaScript 中实现了 Burrows-Wheeler 变换和 Huffman 编码的解压流水线,无需任何服务器端处理。这是一个仅解码工具——它解压 bzip2 数据,但不会创建新的 bzip2 归档。

    常见开发者使用场景

    开发者使用该工具可快速查看 bzip2 压缩的日志文件、数据库转储或源码归档,而无需安装命令行工具。当你在未预装 bzip2 的系统上(Windows、精简容器)工作、需要查看从包仓库下载的 .bz2 文件内容,或想在不打开终端的情况下解压同事发来的单个文件时,它都很有用。

    数据格式、类型或变体

    Bzip2 使用 Burrows-Wheeler 变换(BWT)、Move-to-Front 编码和 Huffman 编码的流水线来实现压缩,通常在速度更慢的代价下获得比 gzip 高 10–15% 的压缩率。文件使用 .bz2 扩展名,并以魔数 'BZ' 开头,后跟版本标识。块大小范围为 100k 到 900k(在头部中用数字 1-9 表示),块越大压缩效果越好,但解压需要更多内存。

    常见陷阱与边界情况

    与 gzip 相比,Bzip2 对流式解压的支持不够友好——必须先读取整个块才能产生任何输出,这意味着非常大的文件可能会占用大量浏览器内存。多流 bzip2 文件(由 pbzip2 用于并行压缩创建)包含串联的 bzip2 流,一些解码器会错误处理。该工具支持标准的单流 .bz2 文件;对于 .tar.bz2 归档,你将得到仍需进一步解包的原始 tar 内容。

    何时使用此工具而非代码

    当你需要在不安装 bzip2 工具的情况下快速一次性解压并查看文件内容时,使用此浏览器工具。对于流水线中的脚本化解压、批量处理多个归档,或处理需要解包的 .tar.bz2 文件,请使用命令行 bzip2/pbzip2 或 Python 的 bz2 模块等语言库,它们支持流式处理并可与 tar 解包集成。