【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 现代压缩工具,速度快

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

相关推荐
qwy7152292581632 小时前
13-R数据重塑
服务器·数据库·r语言
anddddoooo4 小时前
域内证书维权
服务器·网络·网络协议·安全·网络安全·https·ssl
zhoupenghui1684 小时前
golang时间相关函数总结
服务器·前端·golang·time
lllsure4 小时前
Linux 实用指令
linux·物联网
努力的小T5 小时前
使用 Docker 部署 Apache Spark 集群教程
linux·运维·服务器·docker·容器·spark·云计算
Nerd Nirvana5 小时前
OpenSSL crt & key (生成一套用于TLS双向认证的证书密钥)
linux·ssl·shell·认证·加密·tls·oepnssl
不修×蝙蝠5 小时前
HTTP 协议(Ⅲ)
服务器·http·javaee·http协议
letisgo56 小时前
记录一次部署PC端网址全过程
linux·阿里云·服务器运维
梨落秋溪、6 小时前
输入框元素覆盖冲突
java·服务器·前端
枫叶落雨2226 小时前
08-Elasticsearch
运维·jenkins