压缩工具gzip、bzip2、xz的使用
本文使用
- 为了要压缩
- 常见压缩格式
- 压缩工具
- gzip压缩工具
- bz2压缩工具
- xz压缩工具
为什么要压缩
为什么要压缩?文件经过压缩后,其大小会缩小,可以节约服务器带宽资源、内存资源,节约运维成本!
常见压缩格式
Linux平台的常见压缩文件格式有以下几种
- .zip
- .gz
- .bz2
- .xz
- .tar.gz
- .tar.bz2
- .tar.xz
虽然在Linux中文件后缀并不重要,但是为了便于区分和管理,压缩文件还是最好加上上述的一些后缀名。
压缩工具
gzip压缩工具
gzip不能压缩目录!!
- 基本使用:压缩/解压缩
# 创建一个大文件
[root@localhost tmp]# find /etc/ -type f -exec cat {} >> 1.txt \;
[root@localhost tmp]# ls -lh
总用量 25M
-rw-r--r--. 1 root root 25M 11月 3 18:53 1.txt
#压缩文件:gzip file
[root@localhost tmp]# gzip 1.txt
[root@localhost tmp]# ls -lh
总用量 9.3M
-rw-r--r--. 1 root root 9.3M 11月 3 18:53 1.txt.gz
#解压缩文件: gzip -d file.gz
# gzip -d 等价于 gunzip
[root@localhost tmp]# gzip -d 1.txt.gz
[root@localhost tmp]# ls -lh
总用量 25M
-rw-r--r--. 1 root root 25M 11月 3 18:53 1.txt
- 按指定压缩级别进行压缩
#以1级别进行压缩,默认压缩级别为9;
# 压缩级别1-9,压缩级别越高,占用CPU资源越高
# gzip -[1-9] file
[root@localhost tmp]# gzip -1 1.txt
[root@localhost tmp]# ls -lh
总用量 9.9M
-rw-r--r--. 1 root root 9.9M 11月 3 18:53 1.txt.gz
- 在压缩的同时,保留原文件(默认不保留)
[root@localhost tmp]# gzip -c 1.txt > /test/tmp/1.txt.gz
[root@localhost tmp]# ls -lh
总用量 34M
-rw-r--r--. 1 root root 25M 11月 3 18:53 1.txt
-rw-r--r--. 1 root root 9.3M 11月 3 19:04 1.txt.gz
- -c配合-d使用,将压缩文件解压缩的同时保留压缩包
# 注意最好使用绝对路径表示文件,清楚明白,当然相对路径表示也可以。
[[root@localhost tmp]# gzip -d -c /test/tmp/1.txt.gz > /test/tmp/2.txt
[root@localhost tmp]# ls -l
总用量 34684
-rw-r--r--. 1 root root 9649736 11月 3 19:04 1.txt.gz
-rw-r--r--. 1 root root 25865478 11月 3 19:22 2.txt
- zcat命令在不打开压缩包的情况下查看包内文件的内容
# 由于内容太多,这里只显示行数
[root@localhost tmp]# zcat 1.txt.gz | wc -l
176350
可以使用file命令查看压缩文件的具体信息!
[root@localhost tmp]# file 1.txt.gz
1.txt.gz: gzip compressed data, was "1.txt", from Unix, last modified: Fri Nov 3 18:53:55 2017, max speed
有些压缩文件被命名为不带压缩文件类型后缀的,这种文件无法解压,可以使用file来查看文件类型,然后修改后缀,更好区分!!
[root@centos7 test]# mv 1.txt.bz2 1.txt
[root@centos7 test]# file 1.txt
1.txt: bzip2 compressed data, block size = 900k
[root@centos7 test]# mv 1.txt 1.txt.bz2
bz2压缩工具
压缩率比gzip更高
未安装使用yum install -y bzip2
常用使用跟gzip命令类似,且同样不支持压缩目录
- 基本用法
# 压缩前
[root@localhost tmp]# ls -lh
总用量 25M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
# bzip2压缩
[root@localhost tmp]# bzip2 1.txt
# 压缩后,比gzip压缩率高
[root@localhost tmp]# ls -lh
总用量 8.2M
-rw-r--r--. 1 root root 8.1M 11月 3 19:22 1.txt.bz2
# file命令查看文件格式
[root@localhost tmp]# file 1.txt.bz2
1.txt.bz2: bzip2 compressed data, block size = 900k
# bzip2解压缩
[root@localhost tmp]# bzip2 -d 1.txt.bz2
[root@localhost tmp]# ls -lh
总用量 25M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
- -c参数在压缩同时保留原文件
[root@localhost tmp]# bzip2 -c 1.txt > 1.txt.bz2
[root@localhost tmp]# ls -lh
总用量 33M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
-rw-r--r--. 1 root root 8.1M 11月 3 20:04 1.txt.bz2
- -d -c参数:在解压同时保留原压缩文件
[root@localhost tmp]# bzip2 -d -c 1.txt.bz2 > 3.txt
[root@localhost tmp]# ls -l
总用量 58816
-rw-r--r--. 1 root root 25865478 11月 3 19:22 1.txt
-rw-r--r--. 1 root root 8491810 11月 3 20:04 1.txt.bz2
-rw-r--r--. 1 root root 25865478 11月 3 20:06 3.txt
- 指定压缩级压缩(一般保存默认即可)
bzip2同样可以指定压缩级别:1-9,默认级别为6
[root@localhost tmp]# bzip2 -1 1.txt
[root@localhost tmp]# ls -lh
总用量 8.8M
-rw-r--r--. 1 root root 8.8M 11月 3 19:22 1.txt.bz2
- 不解压情况下查看压缩文件内文件的内容
[root@localhost tmp]# bzcat 1.txt.bz2 | wc -l
176350
xz压缩工具
级别使用方法等同与上述的gzip和bzip2命令,同样也不能压缩目录!!
一般情况下,上述3种压缩方式:xz > bz2 > gzip
具体压缩要看文件内容,也不一定xz的压缩包最小
- 基本使用
# 压缩
[root@localhost tmp]# xz 1.txt
[root@localhost tmp]# ls -lh
总用量 7.0M
-rw-r--r--. 1 root root 7.0M 11月 3 19:22 1.txt.xz
# 解压缩 xz -d等价于unxz
[root@localhost tmp]# xz -d 1.txt.xz
[root@localhost tmp]# ls -lh
总用量 25M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
- 压缩文件同时保留原文件
[root@localhost tmp]# xz -c 1.txt > 1.txt.xz
[root@localhost tmp]# ls -lh
总用量 32M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
-rw-r--r--. 1 root root 7.0M 11月 3 21:02 1.txt.xz
- 解压同时保留压缩文件
[root@localhost tmp]# xz -d -c 1.txt.xz > ./2.txt
[root@localhost tmp]# ls -lh
总用量 57M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
-rw-r--r--. 1 root root 7.0M 11月 3 21:02 1.txt.xz
-rw-r--r--. 1 root root 25M 11月 3 21:02 2.txt
- 查看压缩文件内的文件内容(不解压前提下)
[root@localhost tmp]# xzcat 1.txt.xz | wc -l
176350
- xz同样支持指导压缩级别的压缩
[root@localhost tmp]# xz -1 2.txt
[root@localhost tmp]# ls -lh
总用量 40M
-rw-r--r--. 1 root root 25M 11月 3 19:22 1.txt
-rw-r--r--. 1 root root 7.0M 11月 3 21:02 1.txt.xz
-rw-r--r--. 1 root root 7.5M 11月 3 21:02 2.txt.xz
转载于:https://my.oschina.net/LuCastiel/blog/1560663
压缩工具gzip、bzip2、xz的使用的更多相关文章
- gzip,bzip2,xz压缩工具
gzip,bzip2,xz压缩工具====================== gzip压缩工具 示例:[root@aminglinux yasuo]# ls1.txt 2.txt 3.txt[roo ...
- centos 文档的压缩和打包 gzip,bzip2,xz,zip,unzip,tar,tgz 第九节课
centos 文档的压缩和打包 gzip,bzip2,xz,zip,unzip,tar,tgz 第九节课 SAS盘可以支持热插拔,看机器 tar.zip.tar -czvf 不会动源文件,gz ...
- [CentOS7] gzip, bzip2, xz 压缩与解压缩
声明:本文主要总结自:鸟哥的Linux私房菜-第八章.檔案與檔案系統的壓縮,打包與備份,如有侵权,请通知博主 gzip命令: 选项参数: -c :将压缩后的数据显示到屏幕上,可以用于重定向: -d : ...
- lesson - 8 课程笔记 tar / gzip /bzip2 / xz /
作用:为linux的文件和目录创建档案,也可以在档案中改变文件,或者向档案中加入新的文件即用来压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的 语法:tar[必要参数][选择参数][ ...
- 关于打包压缩几种格式(gzip,bzip2,xz)的试验对比
要通过脚本进行备份,必然将会应用到压缩技术,这里简单针对几个常见的格式进行测验,从而得到一种合适的方式. 这里以一个应用目录做例子: [root@isj-test-5 mnt]$du -sh * 66 ...
- Linux之备份(tar)/解压与压缩(gzip,bzip2,xz)【待完善】
[本博文,待完善] 以data原始文件为例,同tar备份,用xz压缩,实现备份->压缩整个过程的正向过程(生成.tar.xz)与其逆过程(先解压,后还原备份文件) 1.备份(tar) tar - ...
- Linux centosVMware 压缩打包介绍、gzip压缩工具、bzip2压缩工具、xz压缩工具。
一.压缩打包介绍 Lnux下常见的压缩文件通常是.tar.gz模式,还有.tar..gz..bz2..zip..tar.bz2..tar.xz. .gz:表示由gzip压缩工具压缩的文件 .bz2:表 ...
- [拾 得] zip gzip bzip2 & tar 压缩/打包 四大金刚
坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/ 索引: 介绍压缩和打包 gzip bzip2 zip 的基本使用 gz ...
- 关于压缩软件gzip和xz的简单对照
晚上因为处理磁盘报警的须要.进行了日志压缩,在此次压缩中分别使用了gzip和xz软件对文本进行了压缩.压缩的结果很令人诧异. 出于对xz好奇的原因是因为在下载内核源码时常常能够看到.xz格式的文件包. ...
随机推荐
- 存储机制 cookie session jwt token
cookieCookie的诞生 由于HTTP协议是无状态的,而服务器端的业务必须是要有状态的.Cookie诞生的最初目的是为了存储web中的状态信息,以方便服务器端使用.比如判断用户是否是第一次访问网 ...
- ELK数据批量导入
数据批量导入 • 使用 _bulk 批量导入数据 – 批 ...
- SpringCloud(三)之我学 Hystrix
1.断路器 在消费服务的启动类,添加注解:@EnableCircuitBreaker,在消费服务的调用类上,添加注解:@HystrixCommand(fallbackMethod = "&q ...
- Servlet 中文乱码问题解析及详细解决方法
使用 servlet 向客户端浏览器回送中文时,经常出现中文乱码的问题,这里给大家完完全全地搞明白: 一.基本常识 中文系统默认是 GBK 编码(GBK是对GB2312的补充,包含它) 需要处理编码问 ...
- 打造一款 刷Java 知识的小程序(二)
学习Java的神器已上线,面向广大Java爱好者! 之前写的一篇:打造一款 刷Java 知识的小程序(一) 一.第二版做了什么? 第一版小程序只具有初级展示功能,知识点都是hardcode在代码里面的 ...
- 利用xposed hook Auto.js程序、解密其js脚本
一.原理 原理很简单就是hook auto.js的com.stardust.autojs.script.StringScriptSource类,当然前题你要逆向的auto.js程序dex没有加固,当然 ...
- 28.6 Integer 自动装箱和拆箱
public class IntegerDemo2 { public static void main(String[] args) { //自动装箱 // Integer i = new Integ ...
- 8.3 String 类的方法 使用分类
String类的判断功能.获取功能. * String类的判断功能: * boolean equals(Object obj):比较字符串的内容是否相同 * boolean equalsIgnoreC ...
- R语言kohonen包主要函数介绍
最近准备写一篇关于自组织映射 (Self-organizing map)的文章.SOM的代码很多,研究了一圈之后目前使用最顺手的是R语言的kohonen包. 这个kohonen包功能很丰富,但是接口不 ...
- R - C Looooops POJ - 2115 (exgcd)
题目大意:很好理解,一个for循环语句,从a开始到b结束,步长是c,模数是pow(2,k) 问,最少循环多少次,才能到达b,如果永远都到不了b,输出FOREVER 题解:其实就是求一个线性方程,cx= ...
