一、为什么要压缩文件:因为文件太大,占用存储空间,所以将其压缩。所有的文件在计算机中以二进制方式存储,都是0和1,那么记录的时候可以记录有多少个0和多少个1,这样就节省了存储空间,这就算是一种压缩方式。
*.gz | 通过gzip程序压缩的文件 |
*.bz2 | 通过bzip2程序压缩的文件 |
*.tar | 通过tar程序打包的数据,并没有经过压缩 |
*.tar.gz | 通过tar程序打包的文件,其中经过gzip的压缩 |
*.tar.bz2 | 通过tar程序打包的文件,其中经过bzip2的压缩 |
--------gzip和bzip2都只能一次压缩一个文件(不能压缩目录),而tar则可以将多个文件打包,打包后使用gzip或者bzip2去压缩多个文件。
--------我们需要知道的是Linux下文件的名字和其后缀名是没有关系的,而在Linux下后缀名是为了告诉你,这个文件是个压缩文件。
Linux下常见的压缩方式是gzip和bzip
二、通过gzip压缩和解压的方法:
压缩: gzip 【文件名】(不保留原文件)
gzip -c 【文件名 】> 【文件名.gz】(保留原文件) 这里都可以选择要压缩的文件路径和压缩后的文件存储路径,如图:
压缩后文件的查看:zcat 【文件名.gz】
解压:gzip -d 【文件名.gz】 > 【文件名】(不保留压缩后的文件)
gunzip 【文件名.gz】(不保留压缩后的文件)
gzip -cd 【文件名.gz 】>【 文件名】(保留压缩后的文件)
三、通过bzip2压缩和解压的方法:
(bzip2压缩和解压的方法和gzip相同)
压缩:bzip2 【文件名】(不保留原文件)
bzip2 -d 【文件名 】> 【文件名.bz2】(保留原文件)
解压:bzip2 -d 【文件名.bz2】 > 【文件名】(不保留压缩后的文件)
bunzip2 【文件名.bz2】(不保留压缩后的文件)
bzip2 -cd 【文件名.bz2】 > 文件名(保留压缩后的文件)
压缩后文件的查看:bzcat 【 文件名.bz2】
四、tar打包文件的操作方法:
tar的命令组合比较繁琐,首先我们需要了解它的命令 :
tar+[主选项+辅选项]+文件or目录 这里辅选项可以不写
主选项:( 只能出现一个选项)
c------creat创建一个新归档文件;
x------从归档文件中提取文件出来;
t------列出归档文件的内容,查看已经打包了哪些文件,重点在查看文件名。
辅选项:
z------通过gzip的支持进行压缩/解压缩,一般格式为*.tar.gz;
j------通过bzip2的支持进行压缩/解压缩,一般格式为*.tar.bz2;
v------ 归档或解包过程中显示被打包的文件;
C------这个参数用在解压缩时,若要在特定目录解压缩,可以使用这个参数;
--exclude FILE:在打包的过程中排除FILE文件;
f------输出结果到文件,必须写该选项。(打包的时候,打包结果必须要输入到某个文件,而且f后必须跟打包后的文件名)
打包压缩:
例:打包并用gzip压缩haha目录下的所有文件和目录。
命令:tar czvf dabao.tar.gz ceshi test xixi (czvf可随便组合,但是f选项一定放置最后,且f后必须跟打包后的文件名)
查看已压缩文件:tar tf 【文件名.tar.gz】
提取解压:
命令:tar xvf dabao.tar.gz -C /root/mulu (虽然命令中没有写以哪种方式解压,但是x选项会自动调用,用哪种程序去解压,所以写不写“j”或者“z”都可以)