《鸟哥的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命令)或指定解压路径(对于其他命令,具体取决于命令的语法)。
相关推荐
人类群星闪耀时7 分钟前
大模型技术优化负载均衡:AI驱动的智能化运维
运维·人工智能·负载均衡
新手上路狂踩坑20 分钟前
Android Studio的笔记--BusyBox相关
android·linux·笔记·android studio·busybox
新时代农民工--小明39 分钟前
前端自动化部署更新,自动化打包部署
运维·前端·自动化
一个不秃头的 程序员1 小时前
服务器上加入SFTP------(小白篇 1)
运维·服务器
fnd_LN1 小时前
Linux文件目录 --- 复制命令CP、递归复制目录、软连接、硬链接
linux·运维·服务器
MorleyOlsen1 小时前
【Trick】解决服务器cuda报错——RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED
运维·服务器·深度学习
周周的奇妙编程1 小时前
基于鲲鹏服务器的打砖块小游戏部署
运维·服务器
OopspoO2 小时前
Linux查看键鼠输入
linux
大熊程序猿2 小时前
airflow docker 安装
运维·docker·容器
从后端到QT2 小时前
boost asio 异步服务器
服务器·网络·tcp/ip