插件窝 干货文章 Linux命令之lz4命令如何使用

Linux命令之lz4命令如何使用

压缩 文件 bash lz4 418    来源:    2025-04-27

lz4 是一个极快的无损压缩算法和工具,专为高性能压缩/解压场景设计。以下是 lz4 命令的详细使用指南:


1. 安装 lz4

  • Debian/Ubuntu: bash sudo apt-get install lz4
  • RHEL/CentOS: bash sudo yum install lz4
  • macOS (Homebrew): bash brew install lz4

2. 基本用法

压缩文件

lz4 [输入文件] [输出文件.lz4]
  • 示例: bash lz4 file.txt file.txt.lz4
    • 如果不指定输出文件名,默认生成 输入文件.lz4

解压文件

lz4 -d [压缩文件.lz4] [输出文件]
  • 示例: bash lz4 -d file.txt.lz4 file_restored.txt
    • -d--decompress 表示解压。

3. 常用选项

选项 说明
-1-12 设置压缩级别(1最快但压缩率低,12最慢但压缩率高,默认是1)。
-f 强制覆盖输出文件(默认不覆盖)。
-k 保留输入文件(默认压缩后会删除输入文件)。
--fast 快速模式(牺牲压缩率换取速度)。
-B 显示进度条(仅限支持的系统)。
-v 显示详细输出。
-l 压缩时保留原始文件名和时间戳。

4. 高级用法

压缩目录

需结合 tar

tar cvf - [目录名] | lz4 > [输出文件.tar.lz4]
  • 示例: bash tar cvf - my_folder | lz4 > my_folder.tar.lz4

解压目录

lz4 -d [压缩文件.tar.lz4] | tar xvf -

测试压缩文件完整性

lz4 -t [文件.lz4]

显示压缩文件信息

lz4 --list [文件.lz4]

5. 性能优化

  • 最快压缩(低压缩率): bash lz4 --fast=3 file.txt
  • 高压缩率(较慢速度): bash lz4 -9 file.txt

6. 管道操作

  • 压缩数据流: bash cat large.log | lz4 > large.log.lz4
  • 解压数据流: bash cat large.log.lz4 | lz4 -d > large_restored.log

7. 注意事项

  • 默认行为lz4 压缩后会删除输入文件(除非用 -k)。
  • 兼容性:确保解压环境的 lz4 版本与压缩时一致(高版本兼容低版本)。
  • 资源占用lz4 以速度优先,内存占用较低,适合实时压缩场景。

示例汇总

# 压缩文件(保留原文件)
lz4 -k file.txt

# 解压文件(强制覆盖输出)
lz4 -d -f file.txt.lz4 output.txt

# 高压缩级别 + 显示进度
lz4 -9 -B largefile.dat

通过灵活组合选项,可以适应不同场景需求(如日志轮转、数据库备份等)。