linux压缩和解压缩

一、前言

我们在windows系统,经常使用rar、zip、7z等格式的压缩包。下载第三方的压缩软件就能对压缩文件进行压缩、解压。

压缩有什么作用呢?
1、传输时,小文件传输会比大文件久,通过压缩打包成一个大文件,传输速度会更快。就像我们U盘在跟电脑传输文件时,可以看到传输的速率。小文件的数量很多,传输会很慢

2、通过压缩,可以节省空间,也能提高传输速度。压缩,顾名思义,就是将文件的大小进行压缩。


二、linux的压缩格式

像Linux系统常见的压缩格式有gz、bz2、zip、tar等。

2.1 文件压缩

2.1.1 gzip压缩格式

压缩语法:gzip 文件名

会生成一个xxx.gz的文件

解压缩语法:

# 有两种方法
1、gunzip xxx.gz
2、gzip -d xxx.gz

-h 可以获取帮助

2.1.2 bzip2压缩格式

压缩语法:bzip2 文件名
会生成一个xxx.bz2的文件

解压缩语法:

bzip2 -d xxx.bz2
-k	保留压缩文件。一般解压缩后,压缩包就不存在了,加-k压缩包和解压缩的文件都会保留
-h 可以获取帮助

2.1.3 xz压缩包格式

压缩语法:xz 文件名
会生成一个xxx.xz的文件

解压缩语法:

xz -d xxx.xz
-k	保留压缩文件。一般解压缩后,压缩包就不存在了,加-k压缩包和解压缩的文件都会保留
-h 可以获取帮助

2.1.4 zip压缩包格式

压缩语法:zip文件名
会生成一个xxx.zip的文件

解压缩语法:

unzip xxx.zip
-d	指定解压缩的地址
-h 可以获取帮助

2.2 目录压缩

使用tar进行目录级的压缩

用法:tar [OPTION...] [FILE]...

tar的参数前面可以不加-

参数:
-c create创建文件
-x -extract [ˈekstrækt] 提取 解压还原文件
-v --verbose显示执行详细过程
-f --file指定备份文件
-t –list 列出压缩包中包括哪些文件,不解包,查看包中的内容
-C (大写)–directory 指定解压位置
-P 保留绝对路径/,解压缩会覆盖原文件
-exclude 排除不打包的文件或目录

压缩语法:tar -cvf 压缩后的文件名 目录路径

例如

-cvf	打包		tar -cvf grub.tar /boot/grub
-xvf	解压缩		tar -xvf grub.tar /boot/grub
-tvf	测试查看		tar -tvf grub.tar   

# 指定解压位置  -C
tar xvf grub.tar.bz2 -C /opt/

# 把两个目录或目录+文件打包成一个软件包:
mkdir back
cp /etc/passwd back/
tar -cvf back.tar /boot/grub  back/ /etc/passwd


打包完成就变成一个文件,可以结合上面的文件级压缩格式一起使用,进行二次压缩

归档加压缩:
-z --gzip 以gzip方式压缩 扩展名: tar.gz
-j --bzip2 以bz2方式压缩的 扩展名:tar.bz2
-J --xz 以xz 方式压缩 扩展名:tar.xz

例如:

# 压缩/etc目录
tar -zcvf test.tar.gz 	 /etc
tar -jcvf test.tar.bz2   /etc
tar -Jcv test.tar.xz   /etc

# 解压缩/etc/目录
tar -zxvf test.tar.gz 	 /etc
tar -jxvf test.tar.bz2   /etc
tar -Jxv test.tar.xz   /etc


三、应用场景

gzip压缩最快,更加倾向于小文件的压缩,速度快

bzip压缩率比gzip小,适用于大文件压缩

xz压缩是比较新型的,最佳压缩率

如果要测试压缩的结果,可以用ls -lh 查看压缩后的大小


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值