Linux常见压缩命令

一、压缩原理

Linux 下的压缩工具核心是通过数据编码算法,将文件中的重复信息用更短的符号表示,从而减少文件体积。不同算法的设计目标不同,因此在压缩率和速度上有明显差异:

  • gzip:基于 DEFLATE 算法(LZ77 + Huffman 编码),在速度和压缩率之间取得平衡,适合日常通用场景。
  • bzip2:使用 Burrows-Wheeler 变换,压缩率比 gzip 更高,但压缩和解压速度较慢。
  • xz:采用 LZMA2 算法,压缩率是三者中最高的,但耗时也最长,适合对大文件进行归档存储。

二、常用命令行工具
  1. gzip / gunzip

    复制代码
    # 压缩文件(原文件会被删除,生成 filename.gz)
    gzip filename
    # 解压 .gz 文件
    gunzip filename.gz
  2. tar(归档 + 压缩) tar 本身是归档工具,可结合不同压缩算法生成压缩包:

    复制代码
    # 归档并以 gzip 压缩
    tar -czvf archive.tar.gz dirname
    # 归档并以 bzip2 压缩
    tar -cjvf archive.tar.bz2 dirname
    # 归档并以 xz 压缩
    tar -cJvf archive.tar.xz dirname
    # 解压 .tar.gz 文件
    tar -xzvf archive.tar.gz
    # 解压 .tar.bz2 文件
    tar -xjvf archive.tar.bz2

    参数说明:

    • -c:创建新的归档文件
    • -x:从归档文件中提取文件
    • -z:使用 gzip 压缩
    • -j:使用 bzip2 压缩
    • -J:使用 xz 压缩
    • -v:显示详细过程
    • -f:指定归档文件名

三、性能比较
工具 速度 压缩率 适用场景
gzip 中等 通用日常压缩
bzip2 较慢 较高 对压缩率有要求的场景
xz 最慢 最高 大文件归档存储
相关推荐
zzzzzz31019 小时前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode19 小时前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
A小辣椒3 天前
TShark:Wireshark CLI 功能
linux
倔强的石头_3 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
A小辣椒3 天前
TShark:基础知识
linux
AlfredZhao3 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
冬奇Lab3 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
AlfredZhao3 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
ClouGence4 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
用户9718356334664 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux