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

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

相关推荐
盟接之桥31 分钟前
盟接之桥说制造:在安全、确定与及时之间,构建品质、交期与反应速度的动态平衡
大数据·运维·安全·汽车·制造·devops
learning_tom44 分钟前
HTML图片标签及路径详解
linux·服务器·php
dbdr09011 小时前
Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十六天
linux·运维·服务器·网络·python·学习
大白的编程日记.2 小时前
【Linux学习笔记】信号的深入理解之软件条件产生信号
linux·笔记·学习
鹧鸪云光伏与储能软件开发2 小时前
投资储能项目能赚多少钱?小程序帮你测算
运维·数据库·小程序·光伏·光伏设计软件·光伏设计
群联云防护小杜2 小时前
服务器异常磁盘写排查手册 · 已删除文件句柄篇
运维·服务器·nginx·开源·lua
buyutang_2 小时前
C/C++ Linux系统编程:线程控制详解,从线程创建到线程终止
linux·c语言·c++·学习
liliangcsdn2 小时前
结合prompt分析NodeRAG的build过程
java·服务器·人工智能·数据分析·知识图谱
云的牧人2 小时前
Ubuntu 22 redis集群搭建
linux·运维·ubuntu
siriuuus2 小时前
Linux 磁盘扩容及分区相关操作实践
linux·运维·服务器