l 文档的压缩与打包
前言:
在Windows下,我们接触最多的压缩文件是.rar格式的;但在Linux下,不能识别这种格式,Linux有独特的工具。但在.zip格式的文件在Windows和Linux下都可以使用。
Linux下常见的压缩文件通常都是.tar.gz格式的,除此外,还有.tar、.gz、.bz2、.zip等格式。如下是Linux常见的后缀名所对应的压缩工具。
v .gz:表示由gzip压缩工具压缩的文件。
v .bz2:表示由bzip压缩工具压缩的文件。
v .tar:表示由tar打包程序打包的文件(tar并没有压缩功能,只是把一个目录合并成一个文件)。
v .tar.gz:可以理解为先由tar打包,然后再由gzip压缩。
v .tar.bz2:可以理解为先由tar打包,然后再由bzip压缩。
v .tar.xz:可以理解为先由tar打包,然后再由xz压缩。
1. gzip压缩工具
格式:gzip【-d#】filename,其中#为1~9的数字。
l -d:该参数在压缩时使用。
l -#:表示压缩等级,1为最差,9为最好,6为默认。
例子:我们先建个目录/tmp/8,然后在里面再建个test目录。然后我们将/tmp/1.txt移动到test目录下(/tmp/1.txt是上一章我们将/etc/dnsmasq.conf复制到/tmp/1.txt下)然后我们进入test目录下。
gzip后面直接跟文件名,表示在当前目录下压缩该文件,原文件也会消失。并且解压文件只需在命令后加-d如下:
命令gzip -d后面跟压缩文件表示解压文件压缩文件。gzip不支持压缩目录,压缩目录时会报错,我们回到test父目录中对test目录进行压缩如下:
2. bzip2压缩工具
格式:bzip2【-dz】filename,他只有-d(解压)和-z(压缩)两个常用项。压缩级别有1~9,压缩时加不加-z都可以压缩文件。没有bzip2命令时需要用命令yum install -y bzip2进行下载如下:
bzip2命令也不可以压缩目录,压缩目录时会报错,如下:
3. xz压缩工具
格式:xz【-dz】filename,和bzip2类似,-z(压缩),-d(解压),压缩时加不加-z都可以压缩文件。如下:
Xz命令也不可以压缩目录,压缩目录时会报错,如下:
4. tar打包工具
格式:tar【-zjxcvfpP】filename tar,常用的选项如下:
v -z:表示同时用gzip压缩。
v -j:表示同时用bzip2压缩。
v -J:表示同时用xz压缩。
v -x:表示解包或者解压缩。
v -t:查看tar中的文件。
v -c:表示建立一个tar包或者压缩文件包。
v -v:表示可视化。
v -f:后面跟文件名(即 -f filename,表示压缩后的文件名为filename,或者解压文件filename。)需要注意的是,如果有多个参数组合的情况下,需要把-f参数写在最后面。
例:
首先,在test目录下建立test111目录,然后在test111目录下建立2.txt文件,并将haha写入到2.txt中
图中用到的!$此特殊符号表示上一条命令的最后一个参数。
接着用tar把test111打包成test111.tar:
Tar不仅可以打包目录也可以打包文件,打包时不加-v,表不可视化。
不管是解包还是打包,原文件是不会被删除的,而他会覆盖当前的文件目录,我们先删除原来的test111目录,然后解包test.tar
(1) 打包同时用gzip压缩
Tar打包时可以直接对文件或目录进行压缩,她支持gzip压缩、bzip2压缩和下载压缩。
① 使用-z可以压缩成gzip文件:
② 使用-tf可以查看包或者压缩包的文件列表:
③ 使用-zxvf可以解压.tar.gz的压缩包:
(2) 打包同时用bzip2压缩
① 使用-cjvf进行压缩
② 使用-tf查看压缩包的文件列表
③ 使用-jxvf来解压.tar.bz2格式的压缩包
5. 使用zip压缩
格式:zip 【-r】打包后的文件名 文件或目录
图中/*指当前目录防止压缩二级目录中的目录
使用-r是用于一并压缩二级目录下的文件。
unzip用于解压
- zcat、bzcat命令的使用