linux

Linux文件压缩与解压的实用方法

小樊
45
2025-09-23 07:13:59
栏目: 智能运维

Linux文件压缩与解压实用方法

一、基础工具分类与核心逻辑

Linux文件压缩分为两类:打包工具(将多个文件/目录合并为单个归档文件,不压缩)和压缩工具(通过算法减小文件体积)。实际使用中,tar(打包工具)常与gzip/bzip2/xz(压缩工具)结合,形成.tar.gz(快速压缩)、.tar.bz2(高压缩率)、.tar.xz(极致压缩)等格式;而zip是跨平台通用格式(兼容Windows),rar则需额外安装工具。

二、常用压缩/解压命令详解

1. tar:归档+压缩一体化工具

tar是Linux最核心的归档工具,通过-z(gzip)、-j(bzip2)、-J(xz)参数实现压缩,-c(创建)、-x(解压)、-f(指定文件名)是核心参数。

2. gzip/gunzip:单文件快速压缩

gzip适用于单个文件的快速压缩(压缩率中等,速度快),压缩后会删除原文件。

3. zip/unzip:跨平台通用压缩

zip格式兼容Windows、Mac等系统,是Linux下最常用的跨平台压缩工具。

4. bzip2/bunzip2:高压缩率工具

bzip2压缩率高于gzip,但速度较慢,适合长期存储的大文件(如日志、备份)。

5. xz/unxz:极致压缩工具

xz压缩率最高(优于bzip2),但速度最慢,适合对空间要求极高的场景(如发行版镜像)。

三、特殊场景解决方案

1. 批量解压当前目录所有.zip文件

使用for循环遍历所有.zip文件并解压:
for z in *.zip; do unzip "$z"; done
"$z"加引号避免文件名含空格时报错)

2. 解压中文编码压缩包

若解压时出现中文乱码,指定编码格式(如GBK):
unzip -O GBK 中文文件.zip
(需系统支持对应编码,可通过locale -a查看可用编码)

3. 解压大文件分卷

对于超过存储设备容量的大文件,可使用split命令分割后压缩,解压时合并:

4. 加密压缩(敏感数据)

使用zip-e参数添加密码,或tar结合gpg加密:

四、最佳实践建议

0
看了该问题的人还看了