Linux中文件的压缩--day15

  • 文件的打包与压缩
    1、什么是文件压缩
    将多个文件或目录合并成为一个特殊的文件。
  • 2、我们为什么要对文件进行压缩
    我们在传输大量文件时,通常都会选择将该文件进行压缩,然后进行传输。
    首先:压缩后的文件会比压缩前的文件小,一个28g的文件夹压缩以后能够达到6g
    其次:多个文件传输的很慢,但单个文件传输的很快,同时还能节省网络消耗。
  • 3、Windows与Linux的压缩之间是否互通。
    windows较多的压缩格式为rar或者zip,但是在Linux上使用最多的格式是zip和tar.gz 。
    PS:Linux不支持Windos下的RAR格式的压缩文件。一般二者之间选择zip格式。
    4、Linux下压缩包有哪些常见的类型
格式 压缩工具
.zip zip压缩工具
.gz gzip压缩工具,只能压缩文件,会删除原文件(通常配合tar使用)
.bz2 bzip2压缩工具,只能压缩文件,会删除源文件(通常配合tar使用)
tar.gz 先使用tar命令归档打包,然后使用gzip压缩
tar.bz2 先使用tar命令归档打包,然后使用bzip压缩
  • gzip的打包与压缩
使用gzip方式进行压缩文件
[root@oldboy ~]# yum install gzip -y
[root@oldboy ~]# touch file
[root@oldboy ~]# gzip file
[root@oldboy ~]# zcat file.gz 
[root@oldboy ~]# ls
1  10  123.zip  2  3  4  5  6  7  8  9  file1  file2  file.gz
[root@oldboy ~]# gzip -d file.gz 
[root@oldboy ~]# ls
1  10  123.zip  2  3  4  5  6  7  8  9  file  file1  file2
当需要让某个文件不生效时
[root@oldboy ~]# gzip CentOS-Vault.repo --> CentOS-Vault.repo.gz
[root@oldboy ~]# zcat CentOS-Vault.repo.gz   --> 查看不想解压的压缩包文件内容
  • zip的打包与压缩

[root@oldboy ~]# yum install zip unzip -y
[root@oldboy ~]# touch biaogan

1、压缩文件为zip

[root@oldboy ~]# zip biaogan.zip biaogan #zip+压缩命名   源文件
  adding: biaogan (stored 0%)
[root@oldboy ~]# ls
1   123.zip  3  5  7  9        biaogan.zip  file1

2、压缩目录为zip

[root@oldboy ~]# mkdir dir/
[root@oldboy ~]# zip -r dir.zip dir/ #-r递归
  adding: dir/ (stored 0%)
[root@oldboy ~]# 

3、查看zip压缩包是否完整

[root@oldboy ~]# zip -T dir.zip 
test of dir.zip OK

4、不解压压缩查看内容用-l和-t

[root@oldboy ~]# unzip -l dir.zip 
[root@oldboy ~]# unzip -t dir.zip 

5、解压zip文件包默认至当前目录

[root@oldboy ~]# unzip dir.zip 
Archive:  dir.zip

6、解压zip内容到/opt目录

[root@oldboy ~]# unzip 123.zip -d /opt/  #-d指向位置

#打包 zip -r /tmp/test.zip  file  dir/
#解包 unzip tt.zip unzip tt.zip -d /opt
  • 2、tar打包与压缩
tar是Linux下最常用的压缩与解压缩,支持文件和目录的压缩归档
语法:tar [-zjxcvfpP] filename
c  #创建新的归档文件
x  #对文档文件解包
t  #列出归档文件里的文件列表
f  #指定包文件名,多参数f放在最后
z  #使用gzip压缩归档后的文件(.tar.gz)
j  #使用bzip2压缩归档后的文件(.tar.bz2)
J  #使用xz压缩归档后的文件(tar.xz)
C  #指定解压目录位置
X  #排除多个文件(写入需要排除的文件名称)
h  #打包软连接
--exclude  #在打包的时候写入需要排除的文件或目录
  • 常用打包与压缩集合
cjf  #打包tar.bz格式
cJf  #打包tar.xz格式  使用较少
zxf  #解压tar.gz格式
jxf  #解压tar.bz格式
czf  #打包tar.gz格式
tf  #查看压缩包内容
xf  #自动选择解压模式
  • 1.将文件或目录进行打包压缩
1.以gzip归档方式打包并压缩
tar czf  test.tar.gz  test/ test2/
2.以bz2方式压缩 
tar cjf  test.tar.bz2 dir.txt dir/
3.打包链接文件,打包链接文件的真实文件
[root@oldboy ~]# cd /
[root@oldboy ~]# tar czfh local.tar.gz  etc/rc.local
4.打包/tmp下所有文件
[root@oldboy ~]# cd /
[root@oldboy ~]# find tmp/ -type f | xargs tar czf tmp.tar.gz
5.打包/tmp下所有文件
[root@oldboy ~]# tar czf tmp.tar.gz $(find /tmp/ -type f)
  • 2.排除文件, 并打包压缩
1.排除单个文件
[root@oldboy ~]#  tar czf etc.tar.gz --exclude=etc/services etc/

2.排除多个文件
[root@oldboy ~]# tar czf etc.tar.gz --exclude=etc/services --exclude=etc/rc.local etc/

3.将需要排除的文件写入文件中

[root@oldboy ~]# cat paichu.list
etc/services
etc/rc.local
etc/rc.d/rc.local
指定需要排除的文件列表, 最后进行打包压缩
[root@oldboy ~]# tar czfX etc.tar.gz paichu.list etc/

4.查看压缩文件

查看压缩包内容和解压
[root@oldboy ~]# tar tf  test.tar.gz

5.解压缩文件

1.解压至当前目录
[root@oldboy ~]# tar xf  test.tar.gz      
2.将解压内容存储至指定的/tmp目录
[root@oldboy ~]# tar xf /etc/local.tar.gz  -C /tmp
tar命令练习
1.环境准备
[root@oldboy ~]# yum install mariadb-server
[root@oldboy ~]# systemctl start mariadb
[root@oldboy ~]# mkdir /backup
 mysql备份及恢复
[root@oldboy ~]# cd /var/lib/mysql
[root@oldboy mysql]# tar cJf /backup/mysql.tar.xz *
[root@oldboy mysql]# tar tf /backup/mysql.tar.xz
[root@oldboy mysql]# tar xf /backup/mysql.tar.xz -C /var/lib/mysql
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352

推荐阅读更多精彩内容