《鸟哥的Linux私房菜基础篇》---4 Linux档案的压缩与打包

目录

一、常见的压缩包的扩展名

二、常见的压缩和解压指令

1、tar

[2、tar + gzip(.tar.gz) (或 .tgz)](#2、tar + gzip(.tar.gz) (或 .tgz))

[3、tar + bzip2(.tar.bz2)](#3、tar + bzip2(.tar.bz2))

4、zip

5、gzip

6、bzip2

7、xz

8、rar

9、7z

三、安装解压工具


一、常见的压缩包的扩展名

*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2

对应的扩展名要用对应的指令来进行解压

*.Z compress 程序压缩的档案;(比较旧,基本不用了)

*.gz gzip 程序压缩的档案;

*.bz2 bzip2 程序压缩的档案;

*.tar tar 程序打包的数据,并没有压缩过;

*.tar.gz tar 程序打包的档案,其中并且经过gzip 的压缩

*.tar.bz2 tar 程序打包的档案,其中并且经过bzip2 的压缩

二、常见的压缩和解压指令

1、tar

未压缩的tar归档文件

tar 选项 归档文件名 要打包的文件或目录

压缩选项

  • -c:创建一个新的归档文件。
  • -x:解压
  • -v:在处理文件时显示详细信息(可选)。
  • -f:指定归档文件的名称。
  • -z:通过gzip进行压缩或解压。
  • -j:通过bzip2进行压缩或解压。
  • -J:通过xz进行压缩或解压。

(1)压缩

bash 复制代码
tar -cvf archive.tar directory_or_files

(2)解压

bash 复制代码
tar -xvf filename.tar
2、tar + gzip(.tar.gz) (或 .tgz)

使用 tar 命令结合 gzip 进行压缩:

(1)压缩

选项说明:

  • -c:创建新的压缩文件
  • -x:解压
  • -z:通过 gzip 压缩、解压
  • -v:显示压缩过程
  • -f:指定压缩文件的名称
  • -J:通过xz解压
bash 复制代码
tar -czvf archive.tar.gz directory_or_file

(2)解压

bash 复制代码
tar -xzvf filename.tar.gz
# 或者
tar -xzvf filename.tgz
3、tar + bzip2(.tar.bz2)

这是使用tar命令结合bzip2压缩的文件。

选项说明:

  • -J:通过xz解压
  • -j:通过 bzip2 压缩

(1)压缩

bash 复制代码
tar -cjvf archive.tar.bz2 directory_or_file

(2)解压

bash 复制代码
tar -xJvf filename.tar.xz
4、zip

这是使用zip工具压缩的文件,需要unzip命令来解压。

选项说明:

  • -r:递归地压缩目录及其内容

(1)压缩

bash 复制代码
zip -r archive.zip directory_or_file

(2)解压

bash 复制代码
unzip filename.zip
5、gzip

单独使用gzip压缩的文件

(1)压缩

1)这将创建一个名为 filename.gz 的压缩文件,并删除原始文件

bash 复制代码
gzip filename

2)保留原始文件,可以使用 -c 选项将输出重定向到一个新文件

bash 复制代码
gzip -c filename > filename.gz

(2)解压

bash 复制代码
gunzip filename.gz
# 或者
gzip -d filename.gz
6、bzip2

单独使用bzip2压缩的文件。

(1)压缩

1)使用 bzip2 命令压缩单个文件,并删除原始文件:

bash 复制代码
bzip2 filename

2)可以使用 -k 选项保留原始文件:

bash 复制代码
bzip2 -k filename

(2)解压

bash 复制代码
bunzip2 filename.bz2
# 或者
bzip2 -d filename.bz2
7、xz

单独使用xz压缩的文件

(1)压缩

1)使用 xz命令压缩单个文件,并删除原始文件:

bash 复制代码
xz filename

2)可以使用 -k 或者 --keep 选项保留原始文件:

bash 复制代码
xz -k filename

(2)解压

cpp 复制代码
unxz filename.xz
# 或者
xz -d filename.xz
8、rar

使用 rar 命令进行压缩(可能需要先安装 rar):

选项说明:

  • a:添加文件到压缩档案中

(1)压缩

bash 复制代码
rar a archive.rar directory_or_file

(2)解压

bash 复制代码
unrar x filename.rar
9、7z

使用 7z 命令进行压缩(可能需要先安装 p7zip):

选项说明:

  • a:添加文件到压缩档案中

(1)压缩

bash 复制代码
7z a archive.7z directory_or_file

(2)解压

bash 复制代码
7z x filename.7z

三、安装解压工具

如果你的系统中缺少上述某个解压工具,你可以使用包管理器来安装它。例如,在Debian或Ubuntu上,你可以使用apt:

bash 复制代码
sudo apt update
sudo apt install unzip unrar p7zip-full

在Red Hat、CentOS或Fedora上,你可以使用yum或dnf:

bash 复制代码
sudo yum install unzip unrar p7zip p7zip-plugins  # CentOS/RHEL
sudo dnf install unzip unrar p7zip p7zip-plugins  # Fedora

注意事项

  • 解压文件时,请确保你有足够的磁盘空间来存储解压后的内容。
  • 解压到当前目录时,请确保当前目录有足够的空间,并且你希望在此处存储解压后的文件。
  • 如果你想要将文件解压到特定目录,可以使用-C选项(对于tar命令)或指定解压路径(对于其他命令,具体取决于命令的语法)。
相关推荐
xbzb1 小时前
自定义 yum 软件源:Linux 上 createrepo,Windows 上纯 Python 也能造
linux·运维·windows·python·yum·createrepo
Android系统攻城狮1 小时前
Linux FFmpeg深度解析之avio_open调用流程与实战(三十八)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
独隅1 小时前
WebStorm Linux 版安装实战与核心效能展示
linux·ide·webstorm
瑞克-桑切斯2 小时前
ERP 企业生产管理系统部署手册
运维·docker·云原生·容器·eureka
江屿风3 小时前
【Git-组件】【Git入门:从文档灾难到版本掌控】流食般投喂
运维·笔记·git·组件·版本控制
我不会起名字3223 小时前
K8s 节点磁盘打满导致 Pod 被驱逐:4 类占用与回收顺序
运维·kubernetes·k8s·diskpressure·evicted
雪落漂泊3 小时前
Linux进程(五):进程地址空间篇
linux·运维·服务器
瑞克-桑切斯3 小时前
docker mail商城
运维·docker·容器
AR-26710-4 小时前
Linux Day32——网络,ROCE-IB与以太网
linux·运维
不庸.5 小时前
WPScan 实战入门:从 Docker 靶场到弱密码爆破
运维·安全·web安全·docker·容器·安全性测试·wpscan