8、linux 中的打包、压缩和解压


一、定义

  • 打包:将多个文件(或者目录)合并成一个文件(大小未变),方便传递
  • 压缩:通过某些算法,将文件大小进行精简,同时不损失文件的内容
  • 解压:将压缩文件解压到指定目录

二、常见压缩文件扩展名解析

*.gz                # gzip 程序压缩的文件
*.bz2               # bzip2 程序压缩的文件
*.tar               # tar 命令打包, 但并没有压缩过的文件
*.tar.gz            # tar 命令打包, 并且经过 gzip 的压缩的文件
*.tar.bz2           # tar 命令打包, 并且经过 bzip2 的压缩的文件

三、常见的压缩、打包、解压指令比较

1. gzip 与 bzip2

gzip 比 bzip2 性能好,但 bzip2 可以获得更高压缩比。缺点是:只能压缩单个文件,不能连同目录一起进行压缩

  • gzip 命令
# 参数介绍
-c 		     # 将压缩的数据输出到标准输出(stdout)
-d 		     # 解压缩
-t 		     # 可以用来检验一个压缩文件的一致性,看看文件有无错误
-v  	     # 可以显示出原文件/压缩文件案的压缩比等信息
-(1,2,...,9) # 压缩等级, -1 最快, 但是压缩比最差;-9 最慢,但是压缩比最好。默认是-6

# 不加 -c 参数进行重定向的话,原本的文件会被压缩成为.gz的文件, 源文件不再存在
  • bzip2 命令
# 参数介绍
-c 			 # 将压缩的过程产生的数据输出到标准输出(stdout)
-d 			 # force decompression
-k 			 # 保留源文件,而不会删除原始的文件
-z 			 # force compression
-v 			 # 可以显示出原文件/压缩文件案的压缩比等信息
-(1,2,...,9) # 压缩等级, -1 最快,但是压缩比最差;-9 最慢,但是压缩比最好。默认是-6

# 不加 -c 或 -k 参数的话,原本的文件会被压缩成为.bz2的文件, 源文件不再存在

2. tar 打包压缩

可以将很多文件(或目录)打包成为一个文件并进行压缩,加上合适的参数即可进行解压

# 参数介绍
-c 	# 建立打包文件
-x  # 解打包或解压缩,可搭配-C(大写)将压缩包解压到指定目录

-j  # 通过 bzip2 的支持进行压缩/解压缩, 此时文件扩展名最好为 *.tar.bz2
-z  # 通过 gzip 的支持进行压缩/解压缩, 此时文件扩展名最好为 *.tar.gz

-v  # 在压缩/解压缩的过程中,将正在处理的文件名显示出来
-f  # -f 后面要立刻接要打包、压缩或解压的文件(.*.tar/*.tar.gz/*.tar.bz2)      
-C(大写)  # 将压缩包解压到指定目录

eg:将整个 /etc 目录下的文件全部打包
tar -cvf /tmp/etc.tar /etc       # 仅打包,不压缩!
tar -zcvf /tmp/etc.tar.gz /etc   # 打包后,以 gzip 压缩
tar -jcvf /tmp/etc.tar.bz2 /etc  # 打包后,以 bzip2 压缩

3、解压命令总结

# tar 解压命令
*.tar:              用 tar -xvf  解压
*.tar.bz2:          用 tar -jxvf 解压
*.tar.xz:           用 tar -Jxvf 解压
*.tar.gz || *.tgz:  用 tar -zxvf 解压    # tar zxvf /root/etc.tar.gz -C /etc
*.tar.Z:            用 tar -xZf  解压

# gzip 和 bzip2 解压命令
*.gz:               用 gzip -d 或者 gunzip 解压
*.bz2:              用 bzip2 -d 或者用 bunzip2 解压

# uncompress 解压命令
*.Z:                用 uncompress 解压

# unrar 和 unzip 解压命令
*.rar:              用 unrar e 解压
*.zip:              用 unzip 解压    # unzip test.zip -d /root/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值