archive Cheatsheet

tar 压缩解压速查表

tar 压缩解压常用命令一页速查:tar/gz/bz2/xz/zst 各种格式、打包排除文件、查看内容和增量备份等高频操作,含参数说明与常见排障场景。

把 tar 各种压缩格式的打包、解压、查看和排除命令整理成速查表,不同后缀的参数一目了然。

targzipbzip2xz压缩

打包与压缩 Create

  • tar -cvf archive.tar dir/
    打包为 .tar(不压缩),-c 创建 -v 显示 -f 指定文件名
  • tar -czvf archive.tar.gz dir/
    打包并用 gzip 压缩(.tar.gz / .tgz),最常用
  • tar -cjvf archive.tar.bz2 dir/
    打包并用 bzip2 压缩,比 gzip 压缩率高但更慢
  • tar -cJvf archive.tar.xz dir/
    打包并用 xz 压缩,压缩率最高但最慢
  • tar --zstd -cvf archive.tar.zst dir/
    用 zstd 压缩,速度远快于 gzip,新系统推荐
  • tar -czvf archive.tar.gz --exclude="*.log" dir/
    打包时排除 .log 文件
  • tar -czvf archive.tar.gz --exclude="node_modules" --exclude=".git" project/
    排除多个目录

解压与提取 Extract

  • tar -xvf archive.tar
    解包 .tar,-x 提取
  • tar -xzvf archive.tar.gz
    解压 .tar.gz / .tgz
  • tar -xjvf archive.tar.bz2
    解压 .tar.bz2 / .tbz2
  • tar -xJvf archive.tar.xz
    解压 .tar.xz / .txz
  • tar -xzvf archive.tar.gz -C /opt/
    解压到指定目录(-C)
  • tar -xzvf archive.tar.gz file.txt
    只解压指定文件
  • tar --zstd -xvf archive.tar.zst
    解压 .tar.zst

查看与测试 List & Test

  • tar -tf archive.tar.gz
    列出压缩包内容(不解压),-t 列表
  • tar -tzvf archive.tar.gz
    详细列出含文件大小和权限
  • tar -tf archive.tar.gz | grep "config"
    查找压缩包中的指定文件
  • gzip -t archive.tar.gz
    测试 gzip 完整性,无输出=正常

其他格式 Other Formats

  • zip -r archive.zip dir/
    zip 压缩目录
  • unzip archive.zip -d /opt/
    解压 zip 到指定目录
  • unzip -l archive.zip
    查看 zip 内容(不解压)
  • gzip file.txt
    压缩单个文件为 file.txt.gz(原文件消失)
  • gzip -k file.txt
    压缩并保留原文件(-k keep)
  • gunzip file.txt.gz
    解压 .gz 文件
  • zcat file.txt.gz
    不解压直接查看 .gz 文件内容
  • 7z x archive.7z
    解压 7z 格式,需安装 p7zip

容易踩的坑

  • 记忆口诀:c=create(打包),x=extract(解压),t=list(查看),z=gzip,j=bzip2,J=xz。
  • 解压前先用 tar -tf 查看内容,确认没有 ../ 路径穿越(zip slip 安全风险)。
  • 大文件压缩用 zstd --long=31 利用长距离匹配,比 gzip 快 5-10 倍且压缩率更好。