Linux 压缩与解压命令参考手册

本文档汇总了 Linux 环境下常用的文件打包、压缩和解压命令,涵盖 targzipzip7z 等工具。


📦 1. tar – 最通用的打包工具

tar 本身只负责打包(将多个文件合并成一个 .tar 文件),不压缩。配合压缩选项可生成 .tar.gz.tar.bz2 等常见格式。

基本用法

操作命令说明
打包(不压缩)tar -cvf archive.tar /path/to/dirc=创建,v=显示过程,f=指定文件名
解包tar -xvf archive.tarx=解包
列出包内容tar -tvf archive.tart=列表

压缩与解压

格式压缩命令解压命令
.tar.gz (gzip)tar -czvf archive.tar.gz /path/to/dirtar -xzvf archive.tar.gz
.tar.bz2 (bzip2)tar -cjvf archive.tar.bz2 /path/to/dirtar -xjvf archive.tar.bz2
.tar.xz (xz)tar -cJvf archive.tar.xz /path/to/dirtar -xJvf archive.tar.xz

常用附加选项

  • -C:指定解压目标目录
    tar -xzvf archive.tar.gz -C /target/dir
    
  • --exclude:排除文件或目录
    tar -czvf archive.tar.gz dir/ --exclude=dir/cache
    
  • -p:保留文件权限(解包时)
  • --strip-components=1:解压时去掉顶层目录

🗜️ 2. gzip / gunzip – 单文件压缩

gzip 只能压缩单个文件,不能打包目录。通常与 tar 配合使用。

操作命令说明
压缩(替换原文件)gzip filename生成 filename.gz
保留原文件压缩gzip -c filename > filename.gz-c 输出到标准输出
解压(替换 .gz 文件)gunzip filename.gzgzip -d filename.gz
保留 .gz 文件解压gunzip -c filename.gz > filename
查看压缩信息gzip -l filename.gz显示压缩率等

🤐 3. bzip2 – 更高压缩率

bzip2 压缩率优于 gzip,但速度较慢,同样用于单文件。

操作命令
压缩bzip2 filenamefilename.bz2
保留原文件压缩bzip2 -k filename
解压bunzip2 filename.bz2bzip2 -d filename.bz2
保留 .bz2 文件解压bunzip2 -k filename.bz2

🗄️ 4. zip / unzip – Windows 兼容格式

zip 既能打包又能压缩,与 Windows 系统通用。

压缩

# 压缩文件或目录(-r 递归)
zip -r archive.zip /path/to/dir

# 排除特定文件
zip -r archive.zip dir/ -x "*.tmp"

# 设置压缩级别(0-9,9 最高)
zip -9 -r archive.zip dir/

解压

# 解压到当前目录
unzip archive.zip

# 解压到指定目录
unzip archive.zip -d /target/dir

# 查看 zip 内容但不解压
unzip -l archive.zip

🗃️ 5. 7z – 高压缩率(需安装 p7zip)

7z 格式通常提供最佳压缩比,需安装 p7zip 包。

# 压缩
7z a archive.7z /path/to/dir

# 解压(-o 后无空格)
7z x archive.7z -o/target/dir

# 列出内容
7z l archive.7z

🧰 6. 其他实用命令

格式压缩解压
.rarrar a archive.rar dir/unrar x archive.rar
.xz (单文件)xz filenameunxz filename.xzxz -d filename.xz

📋 快速参考表

需求场景推荐命令
打包多个文件(不压缩)tar -cvf out.tar dir/
解包 .tartar -xvf out.tar
创建 .tar.gztar -czvf out.tar.gz dir/
解压 .tar.gztar -xzvf out.tar.gz
创建 .tar.bz2tar -cjvf out.tar.bz2 dir/
解压 .tar.bz2tar -xjvf out.tar.bz2
创建 .zip(通用)zip -r out.zip dir/
解压 .zipunzip out.zip
压缩单个文件为 .gzgzip file
解压 .gzgunzip file.gz
获得最佳压缩比7z a out.7z dir/

📦 安装缺失工具

# Debian / Ubuntu
sudo apt install zip unzip p7zip-full rar unrar

# RHEL / CentOS / Fedora
sudo yum install zip unzip p7zip  # 或 dnf

提示targzipbzip2xz 在大多数 Linux 发行版中默认已安装,无需额外配置。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐