8. Linux文档打包压缩

一、压缩技术解密

https://www.jianshu.com/p/7db19fbf8b11

  1. 目前计算机系统中都是用bytes(字节)单位来计量
  2. 事实上计算机最小的计量单位是bits(位)
  3. 1byte=8 bits
  4. 假设byte可以看成底下到模样

1 0 1 1 1 0 1 0

5.8个空格就是8个位,而每个空格可以是0或1,现在假设我们只存入了一个1,那会剩余到7个空位,默认情况下这7个空位无法在写入数据。
6.但压缩技术就是把这些没用到到空间提出来,以让档案占用到空间变小

二、常见压缩文件的扩展名

Linux 系统不以扩展名为文件类型识别的依据,这里的扩展名只是让用户易于分辨。

*.Z         compress 程序压缩的文件;
*.zip       zip 程序压缩的文件;
*.gz        gzip 程序压缩的文件;
*.bz2       bzip2 程序压缩的文件;
*.xz        xz 程序压缩的文件;
*.tar       tar 程序打包的数据,并没有压缩过;
*.tar.gz    tar 程序打包的文件,其中并且经过 gzip 的压缩
*.tar.bz2   tar 程序打包的文件,其中并且经过 bzip2 的压缩
*.tar.xz    tar 程序打包的文件,其中并且经过 xz 的压缩

常见命令工具

gzip, bzip2 以及 xz ,这些都只能对单个文件进行压缩,不能操作目录。

tar 可以对一个到多个文件或者一个目录进行打包成一个单一的文件,但单独使用 tar 命令时,只是打包,不压缩。

后来,GNU 计划中,将整个 tar 与压缩的功能结合在一起,如此一来提供使用者更方便并且更强大的压缩与打包功能!

gzip

gzip 压缩解压单个文件
压缩文件后,自动删除源文件, 自动添加 .gz 为扩展名
解压文件后,自动删除原压缩文件

gzip   [-vd]    file
选项和参数
-v   压缩时候显示压缩比
-d   解压

cp  /etc/services   /tmp

cd /tmp

压缩
gzip  -v    services

查看压缩文件的内容
zcat    services.gz

搜索压缩文件的关键字位置
zgrep blp5 services.gz

浏览压缩文件
zless   services.gz

解压
gzip   services.gz

压缩文件并保留源文件
gzip -c services > services.gz

bzip2

更好的压缩比,但是会占用相对多一些的时间
用法几乎和 gzip 一样

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

示例

压缩

bzip2   -v    services

查看压缩文件内容

bzcat    services.bg

bzless   services.bz2

解压
bzat  -d   services.bz2

xz 扩展

更高压缩比,相应的更长时间的耗费。
和前两个几乎一样的用法

xz   --help

tar

通用选项

-c  :创建打包文件,可搭配 -v 来察看过程中被打包的文件名(filename)
-t  :察看打包文件的内容含有哪些文件名,重点在察看“文件名”就是了;
-x  :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开
      特别留意的是, -c, -t, -x 不可同时出现在一串命令行中。

-v  :在压缩/解压缩的过程中,将正在处理的文件名显示出来!
-f filename:-f 后面要立刻接要被处理的文件名!建议 -f 单独写一个选项啰!(比较不会忘记)
-C 目录    :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。

只打包,不压缩

创建
tar   -cvf   创建后的文件名.tar    文档1  文档2

查看包内的文件列表
tar   -tf    创建后的文件名.tar

解包到当前位置
tar   -xf    创建后的文件名.tar

解包到指定位置
tar   -xf    创建后的文件名.tar   -C    /tmp

打包后进行压缩

可以使用的选项

-z  :通过 gzip  的支持进行压缩/解压缩:此时文件名最好为 *.tar.gz
-j  :通过 bzip2 的支持进行压缩/解压缩:此时文件名最好为 *.tar.bz2
-J  :通过 xz    的支持进行压缩/解压缩:此时文件名最好为 *.tar.xz
 以上 3 个 选项互斥

特别的

-p(小写) :保留备份数据的原本权限与属性,常用于备份重要的配置文件
-P(大写) :保留绝对路径,亦即允许备份数据中含有根目录存在之意;
--exclude=FILE:在压缩的过程中,不要将 FILE 打包!

示例: 备份系统的配置文件,并且保留源文件的权限和属性信息

time tar -zpcv -f etc.tar.gz /etc

time 命令可以计算某个程序执行的时间

查看

查看压缩包的文件列表

tar -tf etc.tar.gz

解压

解压压缩包中的某一个文件

tar -xf etc.tar.gz  etc/sysctl.conf_bk

解压到指定目录

tar -xf etc.tar.gz   -C   /tmp

压缩的时候排除文档

打包压缩的时候可以排除一个或者多个文件或者目录

排除一个文件
tar  -jcv  -f   t.tar.bz2  d1  d2  --exclude=s1

排除多个文件
tar  -jcv   -f  t.tar.bz2  d1  d2  --exclude={s1,s2}

目录也可以
tar  -jcv  -f t.tar.bz2 d1 d2 --exclude=d1
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容