1. tar工具
支持的格式扩展名: .tar, .tar.gz, .tgz, .tar.bz2, .tar.xz, .tar.zst
1.1. 工具安装(Ubuntu系统)
tar(Tape Archive)是一个核心工具,大部分的Linux发行版已经预装在系统中。
1 | # 更新软件包列表 |
1.2. 打包和压缩
1 | # 打包目录(不压缩) |
参数说明:
-c:创建归档-z:使用gzip-j:使用bzip2-J:使用xz-v:显示进度(可选)-f:指定文件名
1.3. 解压和提取
1 | # 解压 .tar |
参数说明:
-x:提取文件-C:指定解压目录(可选)
2. gzip和gunzip
支持的格式扩展名: .gz, .tgz, .tar.gz
2.1. 工具安装(Ubuntu系统)
gzip和gunzip是常用的压缩和解压工具,大部分的Linux发行版已经预装在系统中。
1 | # 更新软件包列表 |
2.2. 压缩文件
1 | # 压缩为 filename.gz,压缩后原文件会被删除 |
参数说明:
-k:保留原文件-9:设置压缩率,压缩率范围1-9,9为最高,默认6
2.3. 解压文件
1 | # 解压为filename,解压后删除.gz文件 |
3. bzip2和bunzip2
支持的格式扩展名: .bz2, .tar.bz2
3.1. 工具安装(Ubuntu系统)
bzip2 和 bunzip2 是用于处理 .bz2 压缩文件的工具,大部分的Linux发行版已经预装在系统中。
1 | # 更新软件包列表 |
3.2. 压缩文件
1 | # 压缩为filename.bz2,压缩后原文件会被删除 |
参数说明:
-k:保留原文件-9:设置压缩率,压缩率范围1-9,9为最高,默认6
3.3. 解压文件
1 | # 解压为filename,解压后删除.bz2文件 |
4. xz和unxz
支持的格式扩展名: .xz, .tar.xz
4.1. 工具安装(Ubuntu系统)
xz和unxz是用于处理.xz压缩文件的工具,提供超高压缩率(尤其适合文本文件)。安装方法如下:
1 | # 更新软件包列表 |
4.2. 压缩文件
1 | # 压缩为filename.xz,压缩后原文件会被删除 |
4.3. 解压文件
1 | # 解压为filename,解压后删除.xz文件 |
5. zip和unzip
支持的格式扩展名: .zip
.zip压缩格式的平台兼容性最强,macOS和Windows都默认支持,Linux下安装zip和unzip工具即可支持。
5.1. 工具安装(Ubuntu系统)
大部分的Linux发行版默认不支持该工具,需要手动下载。
1 | # 更新软件包列表 |
5.2. 压缩文件
1 | # 压缩单个文件 |
-r: 表示递归压缩(包含子目录和文件)。archive.zip: 是生成的压缩文件名(可自定义)。/path/to/directory: 是要压缩的目录路径。-9: 表示压缩级别,级别范围0-9,9为最高,默认6。
5.3. 解压文件
1 | # 解压到当前目录 |
5.4. 乱码问题
因编码问题导致中文乱码时,可以指定编码格式。
1 | unzip -O GBK archive.zip # Windows 压缩包通常用 GBK 编码 |
6. 7zip工具
支持的格式扩展名: .7z, .zip, .tar, .gz, .bz2, .xz, .rar 等
6.1. 工具安装(Ubuntu系统)
大部分的Linux发行版默认不支持该工具,需要手动下载。
1 | # 更新软件包列表 |
6.2. 压缩文件
1 | 7z a archive.7z /path/to/file_or_dir # 基础压缩 |
参数说明:
a: 添加文件到压缩包。-t7z: 指定格式为.7z,可替换为-tzip、-ttar等。-mx=9: 设置压缩率,压缩级别0-9,9为最高。-m0=lzma2: 使用LZMA2算法(默认)。
6.3. 解压文件
1 | # 解压到当前目录 |
参数说明:
x: 保留完整路径解压-o: 指定输出目录(注意无空格,如 -o/home/user)
6.4. 查看压缩包
1 | # 列出文件 |
7. 总结说明
- tar工具是Linux下最常用的打包和压缩(及解压)工具,可以实现各种压缩格式的打包和解压,如常见的
gzip、bzip2、xz等。 gzip和gunzip、bzip2和bunzip2、xz和unxz三种工具主要应用于单文件的压缩和解压,而且用法和参数几乎相同。- zip和7zip的压缩格式,平台兼容性最好(尤其是zip格式)。Windows、macOS和Linux都支持。