Day14打包压缩

1.文件打包与压缩

1.什么是文件压缩?
将多个文件或目录合并成为一个特殊的文件。

2.为什么要对文件进行压缩?
当我们在传输大量的文件时,通常都会选择将该文件进行压缩,然后在进行传输。

首先:压缩后的文件会比压缩前的文件小

多个文件传输很慢,但单个文件传输会很快,同时还能节省网络的消耗。

2.Windows的压缩包与Linux的压缩包能否互通?
在windows系统下,我们接触最多的压缩格式是 rar 或 zip ,但在Linux上使用最多的压缩格式是 zip 和 tar.gz 。Linux上的压缩格式放在windows系统下都是可以正常打开的。PS: Linux不支持 Windows下的 RAR 格式的压缩文件。Windows和Linux互通通常选择 zip

3.Linux下压缩包有哪些常见的类型

格式 压缩工具
.zip zip压缩工具
.gz gzip压缩工具,只能压缩文件,会删除原文件(通常配合tar使用)
.bz2 bzip2压缩工具,只能压缩文件,会删除原文件(通常配合tar使用)
.tar.gz 先使用tar命令归档打包,然后使用gzip压缩
.tar.bz2 先使用tar命令归档打包,然后使用bzip压缩

1.gzip打包与压缩

使用gzip方式进行压缩文件

[root@oldboy ~]# yum install gzip -y
[root@oldboy data]# gzip bgx1.txt           #压缩
[root@oldboy data]# zcat bgx1.txt.gz        #查看gz压缩后的文件
[root@oldboy data]# gzip -d bgx1.txt.gz     #解压gzip的压缩包

#使用场景:当需要让某个文件不生效时
[root@oldboy ~]# gzip CentOS-Vault.repo --> CentOS-Vault.repo.gz
[root@oldboy ~]# zcat CentOS-Vault.repo.gz   --> 查看不想解压的压缩包文件内容

2.zip打包与压缩

使用zip命令可以对文件进行压缩打包,解压则需要使用unzip命令

压缩语法

zip 压缩名称 文件名称

zip -r 压缩名称 目录

解压语法

unzip 压缩包 -d 目录

# 默认情况下没有zip和unzip工具,需要进行安装
[root@oldboy ~]# yum install zip unzip -y

#1.压缩文件为zip包
[root@oldboy data]# zip bgx2.zip bgx2.txt 

#2.压缩目录为zip包  
[root@oldboy data]# zip -r dir1.zip dir1/

#3.查看zip压缩包是否是完整的       
[root@oldboy data]# zip -T bgx2.zip 
test of bgx2.zip OK

#4.不解压压缩查看压缩包中的内容
[root@oldboy data]# unzip -t bgx2.zip 
Archive:  bgx2.zip
    testing: bgx2.txt                 OK
No errors detected in compressed data of bgx2.zip.

[root@oldboy data]# unzip -l bgx2.zip 
Archive:  bgx2.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  08-02-2019 19:56   bgx2.txt
---------                     -------
        0                     1 file


#5.解压zip文件包, 默认解压至当前目录          
[root@oldboy data]# unzip -dir3.zip 

#6.解压zip内容至/opt目录
[root@oldboy data]# unzip dir3.zip -d /opt/

#zip 选项
-r  #压缩目录
-T  #查看zip压缩包是否是完整的
-q  #不显示打包过程
#unzip 选项
-t  #查看压缩包内容是否完好
-l  #以表的形式列出压缩包内容
-d  #.解压zip内容至其他目录

3.tar打包与压缩

tar是linux下最常用的压缩与解压缩, 支持文件和目录的压缩归档

#语法:tar [-zjxcvfpP] filename 
c   #创建新的归档文件
x   #对归档文件解包
t   #列出归档文件里的文件列表
v   #输出命令的归档或解包的过程
f   #指定包文件名,多参数f写最后

z   #使用gzip压缩归档后的文件(.tar.gz)
j   #使用bzip2压缩归档后的文件(.tar.bz2)
J   #使用xz压缩归档后的文件(tar.xz)
C   #指定解压目录位置
X   #排除多个文件(写入需要排除的文件名称)
h   #打包软链接
--hard-dereference  #打包硬链接
--exclude   #在打包的时候写入需要排除文件或目录


#常用打包与压缩组合
czf     #打包tar.gz格式
cjf     #打包tar.bz2格式
cJf     #打包tar.xz格式
czhf    #打包链接文件

zxf     #解压tar.gz格式
jxf     #解压tar.bz格式
xf      #自动选择解压模式
tf      #查看压缩包内容

1.将文件或目录进行打包压缩

#1.以gzip归档方式打包并压缩
[root@oldboy data]# tar czf yasuo.tar.gz dir1/ dir2/

#2.以bz2方式压缩 
[root@oldboy data]# tar cjf yasuo.tar.bz2 dir1/ dir2/

#3.打包链接文件,打包链接文件的真实文件
[root@oldboy data]# tar czhf link.tar.gz /lib/

#4.打包/tmp下所有文件至/opt
[root@xuliangwei ~]# cd /
[root@oldboy data]# find /tmp/ -type f | xargs tar czf /opt/tmp.tar.gz

#5.打包/tmp下所有文件
[root@oldboy data]# tar czf tmp.tar.gz $(find /tmp/ -type f)

2.排除文件, 并打包压缩

#1.排除单个文件
[root@oldboy data]# tar czf etc.tar.gz /etc/ --exclude=etc/services

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

#3.将需要排除的文件写入文件中
[root@xuliangwei /]# cat paichu.list
etc/services
etc/rc.local
etc/rc.d/rc.local
#指定需要排除的文件列表, 最后进行打包压缩
[root@xuliangwei /]# tar czXf etc.tar.gz paichu.list etc/

3.查看压缩文件

#查看压缩包内容
[root@xuliangwei /]# tar tf  test.tar.gz

4.解压缩文

#1.解压至当前目录
[root@xuliangwei /]# tar xf  test.tar.gz      

#2.将解压内容存储至指定的/tmp目录    -C
[root@student ~]# tar xf /etc/local.tar.gz  -C /tmp
打包/etc/目录,命令以ip地址+当前时间方式的压缩包: 比如: 10.0.0.98_2019-4-23_etc.tar.gz
[root@localhost ~]# tar czf $(ifconfig eth0 | awk 'NR==2 {print $2}')_$(date +%F)_etc.tar.gz /etc/

使用tar命令打包/etc/时,会出现一个删根的操作,怎样打包不会进行删根的操作

cd /
[root@localhost ~]# cd /
[root@localhost /]# tar czf /tmp/etc.tar.gz etc/
压缩语法
gzip file   #(压缩后源文件会直接成  .gz的压缩文件)

zip  name.zip  file
zip  -r  name.zip  dir/

#f在最后
tar  czf  name.tar.gz  file  dir/   #打包成.tar.gz文件,可同时打包多个文件或目录
tar  cjf  name.tar.bz2  file  dir/  #打包成.tar.bz2文件
tar  czhf  name.tar.gz  link        #打包链接文件的真实文件 h
tar  czf  etc.tar.gz /etc/ --exclude=etc/services       #排除打包 

查看语法

zcat file.gz            #查看gz压缩后的文件

zip  -T  file.zip       #查看压缩包是否完整
unzip  -t  file.zip     #查看压缩包内容是否完整
unzip  -l  file.zip     #查看压缩包内容

tar  tf  file.tar.gz    #查看压缩包内容

解压语法

gzip  -d  file.gz       #解压gzip的压缩包

unzip  file.zip         
unzip  file.zip  -d  dir/   

tar  xf  file.tar.gz
tar  xf  file.zip  -C  dir/

gizp 源文件(压缩后源文件会直接成 .gz的压缩文件)

zip 压缩名称 文件

zip -r 压缩名称 目录

tar czf 压缩名称 源文件或目录

解压语法

unzip name.zip -d 目录

gzip -d name.gz

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

推荐阅读更多精彩内容