一、压缩打包介绍
二、gzip压缩工具
三、bzip2压缩工具
四、xz压缩工具
五、zip压缩工具
六、tar打包
一、压缩打包介绍
1.1使用压缩工具的好处:
使用压缩文件,不仅可以节省磁盘空间,而且在传输时还能节省网络宽带。
机房宽带的上行和下行都是100M,所以价格昂贵,家用宽带下行是100M,但是上行往往只有10M-20M
1.1Linux下最常见的压缩文件是.tar.gz格式,还有.zip,.gz,.bz2,.xz,.tar.bz2,.tar.xz等。
1.2.gz 表示由gzip压缩工具压缩的文件。
1.3.bz2 表示由bzip2压缩工具压缩的文件。
1.4.zip表示由zip压缩工具压缩的文件。
1.5.xz表示由xz压缩工具压缩的文件。
1.6.tar 表示由tar打包程序打包的文件(tar没有压缩功能,只是把一个目录合并成一个文件)
1.7.tar.gz 先打包,在由gzip压缩
1.8.tar.bz2 先打包,在由bzip2压缩
1.9.tar.xz 先打包,在由xz压缩
二、gzip压缩工具
格式:gzip [参数] filename。安装命令:yum install -y gzip
- gzip -# filename //#范围1-9,默认6。表示压缩等级,等级越高,压缩越严谨
- gzip 不能压缩目录
- gzip filename →压缩文件,暂不支持压缩目录,压缩后源文件消失
- gzip -d是解压缩。
- gzip -d filename.gz →解压文件,解压后,源压缩文件消失
- gunzip filename.gz →解压文件, 解压后,源压缩文件消失
- gzip –c filename > /tmp/filename.gz→指定压缩文件路径,并且源文件存在
- gzip –d –c /tmp/filename.gz > /目录/filename →解压文件到那个路径下,并且源压缩文件存在。
- gunzip –c /tmp/filename.gz > /目录/filename →解压文件到那个路径下,并且源压缩文件存在。
- zcat 1.txt.gz →查看.gz文件(压缩文件不能直接cat,zcat表示先解压后cat)
- file /tmp/1.txt.gz →查看文件的属性
注:-c(create)表示新建一个文件,压缩/解压到指定路径下
三、bzip2压缩工具
bzip命令的格式:bzip2 [-dz] filename ,安装命令:yum install -y bzip2
选项:压缩文件时加不加-z都一样,-d 解压缩。
bzip比gzip压缩更小,所耗费的CPU资源也最大(压缩的文件也是最小的)
- bzip2 1.txt / bzip2 -z 1.txt //压缩文件
- bzip2 -d 1.txt.bz2 / bunzip2 1.txt.bz2 //解压文件
- bzip -# 1.txt //#范围1-9,默认9。表示压缩等级,等级越高,压缩越严谨
- 不能压缩目录
- bzcat 1.txt.bz2 //查看压缩文件
- bzip2 -c 1.txt > /root/1.txt.bz2 //指定压缩文件路径,并且源文件存在
- bzip2 -c -d /root/1.txt.bz2 > /tmp/1.txt.new2 //解压文件到指定路径下,并且源压缩文件存在
- bunzip2 -c /root/1.txt.bz2 > /tmp/1.txt.new2 //解压文件到指定路径下,并且源压缩文件存在
- File 1.txt.bz2 查看文件属性
四、xz压缩工具
xz命令格式:xz[-zd] filename ,安装命令:yum install -y xz
选项:压缩文件加不加-z都可以,-d解压缩。
xz压缩文件比bzip2更小,所耗费的CPU资源也最大(压缩的文件也是最小的)
- xz 1.txt / xz -z 1.txt //压缩文件
- xz -d 1.txt.xz / unxz 1.txt.xz //解压缩文件
- xz -# 1.txt //#范围1-9,默认6。表示压缩等级,等级越高,压缩越严谨
- 不能压缩目录
- xzcat 1.txt.xz //查看压缩文件内容
- xz -c 1.txt > /root/1.txt.xz //指定压缩文件路径,并且源文件存在
- xz -d -c /root/1.txt.xz > 1.txt.new3 //解压文件到指定路径下,并且源压缩文件存在
- unxz -c /root/1.txt.xz > 1.txt.new3 //解压文件到指定路径下,并且源压缩文件存在
- file 1.txt.xz查看文件属性
五、zip压缩工具
命令格式:zip filename.zip filename ,安装命令:yum install -y zip&yum install -y unzip
- zip 1.txt.zip 1.txt //压缩文件
- zip -r 123.zip 123/ //压缩目录
- unzip 1.txt.zip //解压
- unzip 123.zip -d /root/456/ //解压文件,并指定解压到那个目录下
- 不能查看压缩文件的内容,只能查看内容列表
- unzip -l 123.zip //查看压缩文件的内容列表
- zip压缩文件后,源文件不消失
注:-d与之前gzip/bzip2/xz不同,zip里表示指定路径
六、tar打包
6.1tar打包介绍
6.1.1tar本身是一个打包工具,可以把目录打包成一个文件,它把所有的文件整合成一个大文件,方便复制或者移动。
6.1.2命令格式:tar [-zjxcvfpP] filename.tar
6.1.3tar打包或解包均会直接覆盖原文件和目录,不会提示覆盖信息
- -z表示同时使用gzip压缩
- -j表示同时用bzip压缩
- -J表示同时用xz压缩
- -c表示建立一个tar包或者压缩文件包
- -x表示解包或者解压
- -v表示可视化
- -f后面跟文件名(-f filename,表示压缩后的文件名为filename)注意:如果多个参数组合的情况下,-f要写在最后面。
- -t表示查看tar包里的文件
- --exclude filename 表示在打包或压缩时,不要将某个文件不包含在里面。
- 打包或者解包,源文件都存在。
- 打包后产生的文件与打包前的文件在同一目录下。
- tar -cvf 123.tar 123 // 打包目录123
- tar -cvf dwy.tar 1.txt 123 //打包目录123和文件1.txt
- tar -xvf dwy.tar //解包(会覆盖之前的文件源)
- tar -tf dwy.tar //查看打包文件
- tar -cvf dwy.tar --exclude 1.txt --exclude 2/ 123/ //打包目录123,但不包括文件1.txt和目录2
6.3 打包并压缩
6.3.1 tar 命令还可以在打包的同时支持gzip压缩,bzip压缩和xz压缩
- tar -zcvf 123.tar.gz 123
- tar -zxvf 123.tar.gz
- tar -jcvf 123.bz2 123
- tar -jxvf 123.bz2
- tar -Jcvf 123.xz 123
- tar -Jxvf 123.xz
- tar -tf 123.bz2 / tar -tf 123.gz / tar -tf 123.xz
注意:打包/压缩后文件越小,耗时越长,占用cpu资源越多。