Linux 命令:xz

xz 是 Linux/Unix 系统中一款高压缩比的现代化压缩工具 ,采用 LZMA2 压缩算法,压缩率通常优于 gzipbzip2,对应的压缩文件后缀为 .xz,配套解压工具为 unxz,同时 xz -dunxz 功能完全等价。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

核心功能

  • 压缩单个文件为 .xz 格式,默认删除原文件。
  • 支持多线程压缩(适合多核 CPU)、不同压缩级别、保留原文件等。
  • 可直接解压 .xz 文件,也能处理 .tar.xz 格式(需结合 tar)。

基本语法

bash 复制代码
# 压缩文件
xz [选项] 文件名

# 解压文件(三种等价方式)
unxz [选项] 文件名.xz
xz -d [选项] 文件名.xz
xz --decompress [选项] 文件名.xz

常用选项

选项 作用
-d/--decompress 解压模式,等同于 unxz
-k/--keep 压缩/解压时保留原文件(默认删除原文件)
-f/--force 强制覆盖已存在的目标文件
-v/--verbose 显示压缩/解压的详细信息(大小、压缩比、进度等)
-0 ~ -9 设置压缩级别,-0 最快、压缩率最低;-9 最慢、压缩率最高,默认 -6
-T/--threads=数字 指定压缩线程数,例如 -T4 表示使用4线程,适合多核CPU
-c/--stdout 将压缩/解压内容输出到标准输出,不修改原文件

典型用法

一、 压缩操作
  1. 基础压缩

    压缩单个文件,生成 .xz 压缩包,原文件被删除:

    bash 复制代码
    xz test.log
    # 执行后生成 test.log.xz,test.log 被删除
  2. 保留原文件压缩

    使用 -k 选项,压缩后原文件保留:

    bash 复制代码
    xz -k large_database.sql
    # 生成 large_database.sql.xz,原文件保留
  3. 多线程高压缩比压缩

    针对大文件,用 -9 拉满压缩率,-T4 启用4线程加速:

    bash 复制代码
    xz -9 -T4 -k backup.tar
    # 生成 backup.tar.xz,多线程压缩效率更高
  4. 压缩内容重定向输出

    -c 自定义压缩包名称,同时保留原文件:

    bash 复制代码
    xz -c data.csv > custom_data.csv.xz
二、 解压操作
  1. 基础解压

    三种方式效果一致,默认删除原压缩包:

    bash 复制代码
    unxz test.log.xz
    # 或
    xz -d test.log.xz
    # 或
    xz --decompress test.log.xz
    # 执行后生成 test.log,test.log.xz 被删除
  2. 保留压缩包解压

    加上 -k 选项,解压后 .xz 文件不删除:

    bash 复制代码
    unxz -k test.log.xz
    # 或
    xz -dk test.log.xz
  3. 批量解压

    一次性解压当前目录下所有 .xz 文件:

    bash 复制代码
    unxz *.xz
  4. 查看解压内容(不生成文件)

    -c 直接在终端打印解压后的内容:

    bash 复制代码
    xz -dc config.conf.xz

注意事项

  1. xz 只能压缩单个文件 ,无法直接压缩目录。压缩目录需先通过 tar 打包,再用 xz 压缩,最终生成 .tar.xz 格式文件。
  2. 解压 .tar.xz 文件推荐用 tar 一步完成:tar -Jxvf filename.tar.xz-J 代表 xz 格式)。
  3. xz 压缩速度比 gzipbzip2 更慢,但压缩率更高,适合对存储空间敏感的场景(如备份大文件)。
  4. 老版本系统可能未预装 xz,可通过 yum install xz(CentOS)或 apt install xz-utils(Ubuntu)安装。
相关推荐
甲鱼9292 小时前
MySQL 实战手记:日志管理与主从复制搭建全指南
运维
Johny_Zhao16 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
YuMiao1 天前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒2 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号3 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash3 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github