第八章、文件与文件系统的压缩,打包与备份

8.1 压缩文件的用途与技术

8.1.1为什么压缩文件?

  • 节约磁盘空间
  • 节约网络带宽

8.1.2 压缩文件的技术

技术一:将没有占用的空间填满,(节约了空间,但是不方便cpu读取)
技术二: 将重复的码 统计形式记录。

压缩后与压缩的文件所占用的磁盘空间大小, 就可以被称为是压缩比

8.2 Linux 系统常见的压缩指令

linux下 压缩文件的扩展名

  • *.Z:: compress 程序压缩的文件; 已经淘汰了。

现在常用的压缩技术:

  • *.zip: zip 程序压缩的文件;
  • *.gz: gzip 程序压缩的文件;
  • *.bz2: bzip2 程序压缩的文件;
  • *.xz: xz 程序压缩的文件;

打包后压缩:

  • *.tar: tar 程序打包的数据,并没有压缩过;
  • *.tar.gz: tar 程序打包的文件,其中并且经过 gzip 的压缩。gzip 代表GUN zip。
  • *.tar.bz2: tar 程序打包的文件,其中并且经过 bzip2 的压缩
  • *.tar.xz: tar 程序打包的文件,其中并且经过 xz 的压缩

这么多扩展名的目的是标识我们使用不同的程序进行压缩的。 另外tar 程序 是先将文件打包,后然后可以选择压缩,压缩使用的程序可以是4种技术中的一种。

8.2.1gzip 程序的常用命令

[dmtsai@study ~]$ gzip [-cdtv#] 文件名     		//压缩文件
[dmtsai@study ~]$ zcat/zmore/zless 文件名.gz  	//读取文件
[dmtsai@study ~]$ gunzip 文件名.gz  			//解压缩文件  也可以用gzip -d

选项与参数:
-c :将压缩的数据输出到屏幕上,可透过数据流重导向来处理;
-d :解压缩的参数;  会将原本的压缩文件删除。
-t :可以用来检验一个压缩文件的一致性~看看文件有无错误;
-v :可以显示出原文件/压缩文件案的压缩比等信息;
-# :# 为数字的意思,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!预设是 - -6
  • 在预设的状态下原本的文件会被压缩成为 .gz 的档名,源文件就不再存在了。
  • 使用这个程序压缩的软件可以被windows下 winrar 7zip 解压缩。

8.2.2bzip2 程序的常用命令

[dmtsai@study ~]$ bzip2 [-cdkzv#] 檔名
[dmtsai@study ~]$ bzcat 檔名.bz2
选项与参数:
-c :将压缩的过程产生的数据输出到屏幕上!
-d :解压缩的参数
-k :保留源文件,而不会删除原始的文件喔!
-z :压缩的参数 (默认值,可以不加)
-v :可以显示出原文件/压缩文件案的压缩比等信息;
-# :与 gzip 同样的,都是在计算压缩比的参数, -9 最佳, -1 最快!

8.2.3 xz程序的常用命令

[dmtsai@study ~]$ xz [-dtlkc#] 檔名
[dmtsai@study ~]$ xcat 檔名.xz

选项与参数:
-c :同样的,就是将数据由屏幕上输出的意思!
-d :就是解压缩啊!
-t :测试压缩文件的完整性,看有没有错误-l :列出压缩文件的相关信息
-k :保留原本的文件不删除~
-# :同样的,也有较佳的压缩比的意思!

8.3 打包指令: tar

tar程序用来打包,但是它对上述的压缩技术提供了支持,因此可以打包的同时进行压缩。

[dmtsai@study ~]$ tar [-z|-j|-J] [cv] [-f 待建立的新檔名] filename... <==打包与压缩
[dmtsai@study ~]$ tar [-z|-j|-J] [tv] [-f 既有的 tar 檔名] <==察看檔名
[dmtsai@study ~]$ tar [-z|-j|-J] [xv] [-f 既有的 tar 檔名] [-C 目录] <==解压缩
选项与参数:
-c :建立打包文件,可搭配 -v 来察看过程中被打包的档名(filename)
-t :察看打包文件的内容含有哪些档名,重点在察看『档名』就是了;
-x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开特别留意的是, -c, -t, -x 不可同时出现在一串指令列中。
-z :透过 gzip的支持进行压缩/解压缩:此时档名最好为 *.tar.gz
-j :透过 bzip2 的支持进行压缩/解压缩:此时档名最好为 *.tar.bz2
-J :透过 xz的支持进行压缩/解压缩:此时档名最好为 *.tar.xz特别留意, -z, -j, -J 不可以同时出现在一串指令列中
-v:在压缩/解压缩的过程中,将正在处理的文件名显示出来!
-f filename:-f 后面要立刻接要被处理的档名!建议 -f 单独写一个选项啰!(比较不会忘记)
-C 目录:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。其他后续练习会使用到的选项介绍:
-p(小写) :保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
-P(大写) :保留绝对路径,亦即允许备份数据中含有根目录存在之意;
--exclude=FILE:在压缩的过程中,不要将 FILE 打包!

tar 常用的命令

tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称			// 压 缩:
tar -jtv -f filename.tar.bz2									//查 询:
tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录					//解压缩:
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值