压缩:是一种通过特定的算法来减小计算机文件大小的机制
打包:将多个文件放入一个文件中,最终以一个文件的形式存在
Linux系统中常见的压缩命令有三种:compress , gzip , bzip2 。
compress:这个压缩命令仅存在古老的unix机器上,是一个很古老的压缩方式,被gzip所取代,gzip也可以解压commress的压缩文件。
gzip:这个压缩命令在目前来说算是最常见的,它可以解开compress\zip\gzip等软件所压缩的文件。有9个压缩等级,1最快压缩比最差,9最慢压缩比最好,默认为6。使用zcat命令可以查看读取compress与gzip的压缩文件。对文本的压缩率可达到:60%-70%,可配合tar使用。
bzip:如果说gzip是用来取代compress的,那么bzip就是为了取代gzip而存在的。压缩率竟然比gzip还要好,可配合tar使用。
gzip的常用用法:
语法:gzip 参数 文件名
参数:
-c:将压缩的数据输出到屏幕上,可通过数据重定向来处理。
-d:解压的参数
-t:可以用来检验一个压缩文件的一致性,看看文件是否有错误。
-v:可以显示出源文件/压缩文件的压缩比信息。
-#:压缩等级,1-9。
常用的语句:
压缩:gzip -v filename
解压:gzip -d filename
查看文本压缩文件:zcat 文件名
bzip2的常用用法:
语法:bzip2 参数 文件名
参数:
-c:将压缩过程中产生的数据输出到屏幕上
-d:解压缩
-k:保留源文件,而不会删除原始文件
-z:压缩
-v:显示出源文件/压缩文件的压缩比等信息。
-#:与gzip相同,1-9压缩比的参数,1最快,9最佳。
常用的语句:
压缩:bzip2 -z filename
解压:bzip2 -d filename
查看压缩文本:bzcat filename.bz2
tar打包命令
tar命令支持多个文件合并到一个大文件中,还支持gzip/bzip2在打包的同时对文件进行压缩。windows中的WinRAR也支持.tar.gz文件名的解压缩。
语法:
打包与压缩:tar [-j|-z] [cv] [-f 新建的文件名] filename
解压缩: tar [-j|-z] [xv] [-f 新建的文件名] [-C 目录]
参数:
-c:新建打包文件,可搭配-v来查看过程中被打包的文件名
-t:查看打包文件的内容含有那些文件名,重点在查看文件
-x:解压缩或解打包的功能,可搭配-C在特定目录解开。特别留意的是,-c,-t,-x不可同时出现在一串命令中。
-j:通过bzip2的支持进行压缩或解压。
-z:通过gzip的支持进行压缩或解压。
-v:在压缩或解压的过程中,将正在处理的文件名称显示出来。
-f filename:-f后面要接被处理的文件名。建议-f单独写一个参数。
-C 目录:这个参数在解压时,若要在特定目录解压缩,可以使用这个参数。
.tar.bz2 格式常用的语法
解压: tar jxvf filename.tar.bz2 , 压缩: tar jcvf filename.tar.bz2 要压缩的文件
.tar.gz 格式常用的语法
解压:tar zxvf filename.tar.gz ,压缩: tar zcvf filename.tar.gz 要压缩的文件
压缩和打包文件
.bz2 — 使用bzip2命令压缩的文件,可以使用bzip2 -d filename 解包
.gz — 使用gzip命令压缩的文件,可以使用gunzip -d filename 解包
.tar — 使用tar打包的文件,即tarball文件,可以使用tar xf filename 解包
.tbz — 使用tar打完包后再以bzip2命令压缩的文件,可以使用tar jxf filename 解包
.tgz — 使用tar打完包后再以gzip命令压缩的文件,可以使用tar zxf filename 解包
要创建一个 tar 文件,键入:
tar -cvf filename.tar directory/file
可以使用 tar 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:
tar -cvf filename.tar /home/mine/work /home/mine/school