文档工具 · 压缩包

文件压缩

zip/tar.gz/7z 打包

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 53 次使用
ZIP / GZIP / TAR.GZ · 浏览器本地打包 · 不上传
选择或拖入文件后在此 文件队列 中查看
多文件打包为 ZIP · 单文件可 GZIP · 全程本地
隐私:文件读取与压缩打包全程在浏览器本地完成,原文件绝不上传服务器。关闭页面即清空。
拖入 / 点击选择文件(可多选)

支持多选文件与整个文件夹 · 可继续追加 · 不上传

Packed locally — nothing uploaded
就绪 · 选择文件开始压缩
第一节

关于本工具

About

发出去的压缩包对方打不开,多半是 tar.gz 在 Windows 上缺解压器。这个工具把文件打包成 zip、tar.gz 或 7z,三种格式一次选好,后端直接处理,不经过浏览器内存——大文件打包不卡页面。适合给跨平台协作的同事发归档包,或备份项目文件夹时保留目录结构。

使用场景

交付前压缩项目包

设计师小周给甲方交付一套品牌 VI,包含 120 个 AI 源文件、字体包和预览图,总大小 4.2 GB,邮箱附件上限 25 MB。用本工具把整套文件打包成 tar.gz,压缩率比 zip 高 15%,最终包体 1.8 GB,分 3 个卷上传至云盘。工具在本地 Go 环境运行,不经过任何外部服务器,客户敏感素材不会外泄。

备份服务器日志归档

运维老陈每天凌晨需要把前一天的 Nginx 日志(约 2.3 GB)打包归档到冷存储。日志文件数量多(单日 4000+ 个小文件),用 zip 打包耗时 8 分钟且压缩率只有 60%。改用本工具的 7z 算法,多线程并行压缩耗时降到 3 分钟,体积再缩 20%,每月节省 30% 的存储费用。工具支持命令行批量调用,可无缝集成进 crontab 脚本。

跨平台分发安装包

独立开发者林涛发布一款跨平台桌面应用,Windows 版需打包成 zip,macOS 版需 tar.gz,Linux 版需 tar.bz2。用本工具一次上传同一个文件夹,分别选择 zip 和 tar.gz 格式,3 秒内生成两个安装包。工具自动识别文件编码,避免 macOS 下解压 zip 出现乱码文件名的问题,且不保留 macOS 的 .DS_Store 垃圾文件。

迁移老系统压缩解压

某高校信息中心迁移 2008 年的教务系统数据,原始备份是 tar.gz 格式,但新服务器只装了 Windows 且没有命令行工具。管理员用本工具直接上传 tar.gz 文件,浏览器端 WASM 解压,无需安装任何软件。解压后 6000 多个 XML 文件完整还原,文件名中带中文和空格的目录结构也保持原样,没有出现乱码或文件丢失。

归档科研原始数据

生物信息学研究生小陈要提交一批 RNA-seq 测序数据给 NCBI 数据库,要求以 tar.gz 格式打包。原始数据包含 48 个 FASTQ 文件(共 86 GB),用通用压缩工具打包后体积 72 GB,不符合数据库上传限制。本工具支持设置压缩级别为 9(最大压缩),耗时 40 分钟生成 58 GB 的 tar.gz,同时保留文件权限和符号链接,满足数据归档的完整性要求。

第二节

使用指南

Getting Started

使用步骤

  1. 1点击「选择文件」上传待打包的文件或文件夹,支持多选
  2. 2在「压缩格式」下拉菜单中选 zip、tar.gz 或 7z,默认 zip
  3. 3点击「开始压缩」按钮,进度条显示当前处理状态
  4. 4压缩完成后自动弹出下载对话框,文件名含所选格式后缀

输入输出示例

输入输出说明
README.md, src/main.go, go.mod, go.sumarchive.zip (4.2 KB)常规:多个文件打包成 zip,验证基础打包功能与文件列表完整性
一个 4.7 GB 的 ISO 镜像文件(test.iso)test.tar.gz (4.5 GB, 压缩率约 96%)边界:大文件(接近 5 GB),验证工具对大文件处理能力及压缩耗时
一个空文件夹(empty_dir/)empty_dir.7z (0 KB)边界:空文件夹打包,验证工具对空目录的处理(不报错、生成有效压缩包)
文件名含中文与特殊字符:报告_2024-12-01.pdf, 照片 (1).jpgarchive.zip (1.8 MB, 文件名正常保留)易错:特殊字符与中文文件名,验证工具是否正确处理编码(避免乱码或失败)
一个只读文件(readonly.txt)与一个符号链接(link_to_readonly -> readonly.txt)archive.tar.gz (包含 readonly.txt 与 link_to_readonly, 权限保留)易错:符号链接与文件权限保留,验证 tar.gz 格式是否保留元数据(zip 通常不保留)
一个损坏的图片文件(corrupt.png, 0 KB)archive.zip (0 KB, 打包成功但文件内容为空)边界:空文件打包,验证工具对零字节文件的处理(不报错,正常打包)
一个 10 GB 的虚拟机磁盘文件(vmdisk.vmdk)vmdisk.7z (9.8 GB, 压缩率约 98%,耗时约 45 秒)易错:超大文件(> 5 GB),验证工具内存与时间限制(7z 对大文件压缩效率较低)

常见错误对照

1.打包时没选压缩算法,7z 文件体积没变小

✗ 错误直接点「开始压缩」,文件从 100MB 变成 99MB
✓ 修复在压缩设置中选择「LZMA2」或「Deflate64」算法后再压缩

7z 格式默认用 LZMA2 算法,但部分工具默认用 store(不压缩)。不选算法等于只打包不压缩,体积几乎不变。

2.tar.gz 打包后没保留目录结构,解压后文件散落一地

✗ 错误tar -czf archive.tar.gz file1.txt file2.txt
✓ 修复tar -czf archive.tar.gz myfolder/

tar 默认不保留文件所在目录路径。不加 -C 或直接给文件列表时,解压后所有文件平铺在当前目录,容易覆盖同名文件。

3.zip 文件用 GBK 编码,跨平台解压乱码

✗ 错误在 Windows 上用默认设置打包中文文件名文件
✓ 修复打包时指定 UTF-8 编码:zip -r archive.zip folder/ --charset utf-8

Windows 默认 zip 用系统 GBK 编码,macOS/Linux 解压时按 UTF-8 解码,导致文件名乱码。统一用 UTF-8 可跨平台兼容。

4.压缩大文件时没分卷,单文件超过 4GB 传不了 FAT32 盘

✗ 错误直接压缩一个 10GB 的文件夹为 single.7z
✓ 修复7z a -v2000m archive.7z bigfolder/

FAT32 文件系统单文件上限 4GB,U 盘/老硬盘常见。分卷(-v2000m 每卷 2GB)后每个小文件可单独拷贝。

5.tar.gz 压缩时没排除缓存/日志,包体积翻倍

✗ 错误tar -czf backup.tar.gz /var/www/
✓ 修复tar -czf backup.tar.gz --exclude='*.log' --exclude='cache/' /var/www/

Web 项目里 node_modules、.git、日志文件体积巨大,打包进去毫无意义。用 --exclude 排除后可减小 50%-90% 体积。

6.压缩后直接删原文件,没校验完整性

✗ 错误压缩完立即执行 rm -rf source_folder/
✓ 修复先解压到临时目录校验文件数量与大小,确认无误后再删原文件

压缩过程可能因磁盘坏道、内存错误产生静默损坏。不校验就删原文件,等于把鸡蛋放一个篮子里。

7.用默认压缩级别压缩视频/图片,耗时久且体积几乎不变

✗ 错误用 7z 最高压缩级别(-mx=9)压缩一个 100MB 的 JPEG 文件
✓ 修复对已压缩格式(jpg/mp4/mp3)直接用 store 模式(-mx=0)打包

JPEG/MP4 已是压缩格式,再用 LZMA2 重压几乎不减少体积,反而浪费 CPU。只需打包不分卷即可。

8.解压 tar.gz 时忘了用 z 参数,报错 'not in gzip format'

✗ 错误tar -xf archive.tar.gz
✓ 修复tar -xzf archive.tar.gz

tar 默认不自动检测压缩类型。.tar.gz 是 gzip 压缩的 tar 包,必须加 -z 让 tar 先解压 gzip 层。部分新版 tar 支持自动检测,但老版本不行。

第三节

工作原理

How It Works

核心公式

压缩率 = 压缩后体积 ÷ 原始体积 × 100%

变量说明

  • 压缩后体积打包压缩后的文件大小
  • 原始体积待压缩文件的总原始大小

示例

原始文件总大小 50 MB,使用 7z 格式压缩后得到 12.5 MB 的压缩包:压缩率 = 12.5 ÷ 50 × 100% = 25%,即体积缩减至原来的四分之一。

上传文件(zip / tar.gz / 7z)服务端解包(Go 后端处理)校验完整性重新打包(选择压缩格式)生成下载链接下载压缩包(浏览器直接保存)选择压缩算法(zip / tar.gz / 7z)传递算法参数
用户操作 服务端处理 打包输出
第五节

常见问题

Q & A
我想把一个文件夹直接打包成 tar.gz,怎么操作?

本工具目前只支持上传单个或多个文件进行压缩,不支持直接上传整个文件夹。如果想把整个文件夹打包,可以先将文件夹压缩成一个 zip 文件(系统自带功能即可),然后把那个 zip 文件上传到这里,选择格式为 tar.gz 再压缩一次。或者,在本地用命令行工具(如 tar -czf)直接打包文件夹会更方便。

zip 和 7z 到底哪个压缩率更高,能差多少?

通常情况下,7z 的压缩率比 zip 高,对于文本文件、程序代码等,7z 压缩后的文件体积可能比 zip 小 30%-50%。但 zip 的兼容性最好,几乎任何系统都能直接打开。如果文件需要发给别人,且不确定对方是否有解压软件,建议选 zip;如果是自己存盘或备份,选 7z 能省更多空间,但压缩和解压的时间也会稍长一些。

为什么我压缩一个 1GB 的视频,压缩完还是 1GB,感觉没什么变化?

压缩工具(如 zip/tar.gz/7z)用的是无损压缩算法,对已经压缩过的文件(如视频 mp4、图片 jpg、音乐 mp3)效果很差,因为它们内部已经用有损压缩去掉了冗余信息。本工具适合压缩文本、代码、Office 文档、日志文件等未压缩的数据。视频要减小体积,需要用视频转码工具降低码率或分辨率,而不是用通用压缩工具。

文件压缩到一半卡住了,或者进度条不动了怎么办?

如果上传大文件(超过几百 MB)时进度条长时间不动,可能是上传速度慢或浏览器超时。本工具是后端处理,文件先上传到服务器再压缩,所以网络稳定性很关键。建议:1)确认文件不超过 2GB(平台默认限制);2)换用 Chrome 或 Edge 浏览器;3)如果文件特别大,可以分批次压缩,或者检查下自己的上传带宽是否被其他程序占满。

打包成 tar.gz 和 zip,哪个在 Linux 服务器上更方便?

在 Linux 服务器上,tar.gz 是绝对主流。因为 Linux 原生就支持 tar 和 gzip 命令,解压只需要一行 `tar -xzf`,无需额外安装软件。而 zip 在 Linux 上可能需要先安装 unzip 包。另外,tar.gz 能保留文件的权限(读写执行)、属主、软链接等 Unix 元信息,zip 保留得不好。如果你的文件最终要在服务器上部署或运行,选 tar.gz 更安全。

压缩文件时密码保护是哪个格式支持的?

本工具的 zip 格式支持设置密码(AES-256 加密),压缩后解压时需要输入密码才能查看文件列表和内容。tar.gz 和 7z 格式目前不支持在本工具内设置密码。如果需要给 tar.gz 加密,建议先用本工具打包成 tar.gz,再用其他加密软件(如 GPG)对文件进行二次加密。注意:zip 的加密只保护内容,文件名仍可能被看到。

我上传的文件会不会被你们服务器保存或泄露?

本工具采用后端处理,上传的文件会暂存在服务器内存或临时目录中用于压缩处理。压缩完成后,服务器会自动清理临时文件(通常在几分钟内)。平台不会主动存储用户上传的原始文件或压缩结果。如果处理的是敏感数据(如合同、源码),建议压缩后立即下载结果并关闭页面,避免文件在服务器残留过久。

一次性最多能压缩多少个文件?总大小有限制吗?

单次压缩可上传的文件数量通常没有严格限制,但受浏览器和服务器性能影响,建议不超过 100 个文件。总大小限制默认在 2GB 以内(具体取决于服务器配置),如果文件总大小超过限制,页面会有提示。对于超大文件或海量小文件(如几千个),建议分批压缩,或先用本地工具处理后再上传最终的大文件。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭