【Linux知识】Linux常见压缩文件格式以及对应命令行

文章目录

    • [1. **gzip (`.gz`)**](#1. gzip (.gz))
    • [2. **bzip2 (`.bz2`)**](#2. bzip2 (.bz2))
    • [3. **xz (`.xz`)**](#3. xz (.xz))
    • [4. **zip (`.zip`)**](#4. zip (.zip))
    • [5. **tar (`.tar`)**](#5. tar (.tar))
    • [6. **7z (`.7z`)**](#6. 7z (.7z))
    • [7. **rar (`.rar`)**](#7. rar (.rar))
    • [8. **zstd (`.zst`)**](#8. zstd (.zst))
    • 总结

在 Linux 系统中,常见的压缩文件格式包括 .gz.bz2.xz.zip.tar.7z.rar 等。以下是这些格式的详细说明以及对应的压缩和解压缩命令。


1. gzip (.gz)

  • 特点: 使用 gzip 压缩算法,压缩速度快,压缩率适中。
  • 常用命令 :
    • 压缩文件:

      bash 复制代码
      gzip filename

      生成 filename.gz 并删除原文件。

    • 解压缩文件:

      bash 复制代码
      gunzip filename.gz

      bash 复制代码
      gzip -d filename.gz
    • 保留原文件压缩:

      bash 复制代码
      gzip -c filename > filename.gz
    • 查看压缩文件内容:

      bash 复制代码
      zcat filename.gz

2. bzip2 (.bz2)

  • 特点: 使用 bzip2 压缩算法,压缩率比 gzip 高,但速度较慢。
  • 常用命令 :
    • 压缩文件:

      bash 复制代码
      bzip2 filename

      生成 filename.bz2 并删除原文件。

    • 解压缩文件:

      bash 复制代码
      bunzip2 filename.bz2

      bash 复制代码
      bzip2 -d filename.bz2
    • 保留原文件压缩:

      bash 复制代码
      bzip2 -c filename > filename.bz2
    • 查看压缩文件内容:

      bash 复制代码
      bzcat filename.bz2

3. xz (.xz)

  • 特点: 使用 LZMA 压缩算法,压缩率高,但速度较慢。
  • 常用命令 :
    • 压缩文件:

      bash 复制代码
      xz filename

      生成 filename.xz 并删除原文件。

    • 解压缩文件:

      bash 复制代码
      unxz filename.xz

      bash 复制代码
      xz -d filename.xz
    • 保留原文件压缩:

      bash 复制代码
      xz -c filename > filename.xz
    • 查看压缩文件内容:

      bash 复制代码
      xzcat filename.xz

4. zip (.zip)

  • 特点: 支持多文件压缩,兼容性好,常用于跨平台文件传输。
  • 常用命令 :
    • 压缩文件或目录:

      bash 复制代码
      zip archive.zip file1 file2 dir1
    • 解压缩文件:

      bash 复制代码
      unzip archive.zip
    • 查看压缩文件内容:

      bash 复制代码
      unzip -l archive.zip
    • 解压到指定目录:

      bash 复制代码
      unzip archive.zip -d target_directory

5. tar (.tar)

  • 特点 : 用于打包文件,通常与压缩工具结合使用(如 .tar.gz.tar.bz2.tar.xz)。
  • 常用命令 :
    • 打包文件或目录:

      bash 复制代码
      tar -cvf archive.tar file1 file2 dir1
    • 解包文件:

      bash 复制代码
      tar -xvf archive.tar
    • 打包并压缩:

      • 使用 gzip:

        bash 复制代码
        tar -czvf archive.tar.gz file1 file2 dir1
      • 使用 bzip2:

        bash 复制代码
        tar -cjvf archive.tar.bz2 file1 file2 dir1
      • 使用 xz:

        bash 复制代码
        tar -cJvf archive.tar.xz file1 file2 dir1
    • 解压并解包:

      • 使用 gzip:

        bash 复制代码
        tar -xzvf archive.tar.gz
      • 使用 bzip2:

        bash 复制代码
        tar -xjvf archive.tar.bz2
      • 使用 xz:

        bash 复制代码
        tar -xJvf archive.tar.xz
    • 查看压缩文件内容:

      bash 复制代码
      tar -tf archive.tar.gz

6. 7z (.7z)

  • 特点: 高压缩率,支持多种压缩算法。
  • 常用命令 :
    • 压缩文件或目录:

      bash 复制代码
      7z a archive.7z file1 file2 dir1
    • 解压缩文件:

      bash 复制代码
      7z x archive.7z
    • 查看压缩文件内容:

      bash 复制代码
      7z l archive.7z

7. rar (.rar)

  • 特点: 高压缩率,常用于 Windows 平台。
  • 常用命令 :
    • 压缩文件或目录:

      bash 复制代码
      rar a archive.rar file1 file2 dir1
    • 解压缩文件:

      bash 复制代码
      unrar x archive.rar
    • 查看压缩文件内容:

      bash 复制代码
      unrar l archive.rar

8. zstd (.zst)

  • 特点: 现代压缩工具,压缩速度快,压缩率适中。
  • 常用命令 :
    • 压缩文件:

      bash 复制代码
      zstd filename

      生成 filename.zst 并删除原文件。

    • 解压缩文件:

      bash 复制代码
      unzstd filename.zst
    • 查看压缩文件内容:

      bash 复制代码
      zstdcat filename.zst

总结

Linux 提供了多种压缩工具,每种工具都有其独特的优势和适用场景。以下是常用命令的对比:

格式 压缩命令 解压缩命令 特点
.gz gzip filename gunzip filename.gz 速度快,压缩率适中
.bz2 bzip2 filename bunzip2 filename.bz2 压缩率高,速度较慢
.xz xz filename unxz filename.xz 压缩率高,速度较慢
.zip zip archive.zip file1 unzip archive.zip 跨平台兼容性好
.tar tar -cvf archive.tar file1 tar -xvf archive.tar 打包工具,常结合压缩使用
.7z 7z a archive.7z file1 7z x archive.7z 高压缩率
.rar rar a archive.rar file1 unrar x archive.rar 高压缩率,Windows 常用
.zst zstd filename unzstd filename.zst 现代压缩工具,速度快

根据需求选择合适的工具和命令,可以高效地完成文件压缩和解压缩任务。

相关推荐
编程墨客3 分钟前
IO进程----进程
linux·服务器·microsoft
可涵不会debug27 分钟前
【C++】在线五子棋对战项目网页版
linux·服务器·网络·c++·git
清风-云烟1 小时前
使用redis-cli命令实现redis crud操作
java·linux·数据库·redis·spring·缓存·1024程序员节
Rm1 小时前
Linux 防火墙 Systemctl 常用命令速查
linux
孤寂大仙v1 小时前
【Linux】环境变量
linux·运维·服务器
稳联技术1 小时前
DeviceNet转Profinet网关+FANUC机器人:打造工业界的灭霸手套,掌控无限可能
运维·服务器
贾贾20231 小时前
配电自动化中的进线监控技术
大数据·运维·网络·自动化·能源·制造·信息与通信
DADIAN_GONG1 小时前
how to use | in Linux? give me an example
linux·运维·服务器
数据的世界012 小时前
C#中的语句
服务器·c#
新知图书2 小时前
Linux C\C++编程-文件位置指针与读写文件数据块
linux·c语言·c++