TAR.GZ 压缩工具
完全在浏览器中将多个文件或文件夹打包为 tar 后再用 gzip 压缩,可按需下载 .tar.gz・.tgz・.tar(不压缩)・.gz(单文件)等多种格式。适合上传到 Linux 服务器。文件内容绝不会上传到服务器。
广告
TAR.GZ 压缩小技巧
- 整体拖入文件夹后,会保留原有的目录结构打包进 tar。如果单独选择文件,生成的压缩包则没有目录结构,是扁平的。
- .tar.gz 与 .tgz 内容完全相同,只是扩展名不同。如果要提供给 npm 软件包等要求 .tgz 扩展名的工具使用,请选择 .tgz。
- 选择".tar(不压缩)"后会跳过 gzip 压缩步骤。对于图片、视频、ZIP 等本身已经压缩过的文件,压缩前后体积几乎不变,此时不压缩反而处理更快。
- .gz 是不经过 tar、直接压缩单个文件的传统格式。只有在仅需压缩 1 个文件(例如单个日志文件)时才能选择。
- 打包大量文件或体积很大的文件时,由于处理过程占用浏览器内存,可能会比较耗时,在某些环境下甚至会失败。如果总体积达到数百 MB 至数 GB,建议分成几批分别压缩。
广告
常见问题
不会。压缩处理完全在浏览器内完成,文件内容绝不会发送到服务器。
内容完全相同。.tgz 是早期操作系统要求文件名不超过 8 个字符时代遗留下来的写法,只是一个更短的别名。如果对方或所用工具没有特别要求,选择常见的 .tar.gz 即可。
不可以,因为 tar・gzip 格式本身并没有密码保护机制。如果需要密码保护,请使用姊妹工具 ZIP 压缩工具。
由于跳过了 gzip 压缩处理,速度更快。如果要打包的是 JPEG、MP4、ZIP 等已经压缩过的文件,压缩前后体积几乎不变,此时选择不压缩更有利。
请使用同属"文件操作"分类下的"GZ・TAR.GZ 解压工具",支持 .gz・.tar.gz・.tgz・.tar 全部格式。
闲话 ― tar 的 512 字节与 PAX 扩展头
tar 这种文件格式最初是为 20 世纪 70 年代的磁带设备(Tape ARchive)设计的,光是名字就带着一股老式机房的气息。也正因为脱胎于磁带这种只能顺序读写的介质,数据才会以 512 字节为单位划分成一个个"块";如果文件内容不是 512 字节的整数倍,末尾就会补 0 填充,凑齐到下一个块边界。正是这种朴素又固执的结构,让 tar 至今仍然是一种易于实现、又与流式处理天然契合的格式。
不过旧式的 ustar 格式头部中,用于存放文件名的字段只有短短 100 字节,这在文件夹层级很深或名称很长的今天很容易超标。为了绕开这个历史遗留的限制,人们后来设计出了 PAX 扩展头:在正式条目之前插入一个特殊的块,专门用来记录"真正的文件名",从而变相突破了原本 100 字节的天花板。本工具在遇到超过 100 字节的路径时,也会自动附加 PAX 扩展头,确保长路径不会被截断。
与 ZIP 不同,tar 和 gzip 的组合并没有密码保护机制,这其实是两者"各司其职"的设计哲学所致——tar 只负责"打包",gzip 只负责"压缩",谁都没有把加密这件事纳入自己的职责范围。如果需要分发机密性较高的文件,建议改用支持加密的姊妹工具 ZIP 压缩工具。
广告