热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

四周第四次课(4月16日)6.1压缩打包介绍6.2gzip压缩工具6.3bzip2压缩工具6.4xz压缩工具...

2019独角兽企业重金招聘Python工程师标准6.1压缩打包介绍使用压缩工具的好处:使用压缩文件,不仅可以节省磁盘空间,而且在传输

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

6.1 压缩打包介绍

使用压缩工具的好处:
使用压缩文件,不仅可以节省磁盘空间,而且在传输时还能节省网络宽带。

我们通常讲的家用宽带和机房宽带100M是有区别的:
机房宽带的上行和下行都是100M,所以价格昂贵,家用宽带下行是100M,但是上行往往只有10M-20M

  • Linux下最常见的压缩文件是.tar.gz格式,还有.zip,.gz,.bz2,.xz,.tar.bz2,.tar.xz
  • 等。
  • .gz 表示由gzip压缩工具压缩的文件。
  • .bz2 表示由bzip2压缩工具压缩的文件。
  • .tar 表示由tar打包程序打包的文件(tar没有压缩功能,只是把一个目录合并成一个文件)
  • .tar.gz 先打包,在由gzip压缩
  • .tar.bz2 先打包,在由bzip2压缩
  • .tar.xz 先打包,在由xz压缩
6.2 gzip压缩工具

格式:gzip [参数] filename

          gzip -d是解压缩。

  • gzip -# filename     //#范围1-9,默认6
  • gzip 不能压缩目录
  • gzip filename 压缩文件,暂不支持压缩目录,压缩后源文件消失
  • gzip -d filename.gz 解压文件,解压后,源压缩文件消失
  • gunzip filename.gz 解压文件, 解压后,源压缩文件消失
  • gzip –c filename > /tmp/filename.gz指定压缩文件路径,并且源文件存在
  • gzip –d –c /tmp/filename.gz > /目录/filename 解压文件到那个路径下,并且源压缩文件存在。
  • gunzip –c /tmp/filename.gz > /目录/filename 解压文件到那个路径下,并且源压缩文件存在。
  • zcat 1.txt.gz 查看.gz文件
  • file /tmp/1.txt.gz 查看文件的属性

例子:查找/etc/下后缀为.conf的文件,并将它的内容追加到文件1.txt中,并且压缩它,然后再解压。

[root@linux-151 d6z]# find /etc/ -type f -name "*.conf" -exec cat {} >>1.txt \;
[root@linux-151 d6z]# du -sh 1.txt
4.0M 1.txt //这里要注意一下,这个大小不太准确,这里多次追加会看到文件,du -sh 1.txt查看的文件数值不同,但在多次查看,文件大小会恢复正常。(跳转数值较大比,是因为这个文件本身存在很多空隙,最后在压缩并解压后,会发现大小会有不同)
[root@linux-151 d6z]# gzip 1.txt
[root@linux-151 d6z]# du -sh 1.txt.gz
664K 1.txt.gz
[root@linux-151 d6z]# gzip -d 1.txt.gz
[root@linux-151 d6z]# du -sh 1.txt
2.5M 1.txt
[root@linux-151 d6z]# gzip 1.txt
[root@linux-151 d6z]# du -sh 1.txt.gz
664K 1.txt.gz
[root@linux-151 d6z]# gunzip 1.txt.gz
[root@linux-151 d6z]# du -sh 1.txt
2.5M 1.txt

  • 压缩文件1.txt,并且将压缩文件放到/tmp/下

[root@linux-151 d6z]# gzip -c 1.txt > /tmp/1.txt.gz
[root@linux-151 d6z]# ls
1.txt
[root@linux-151 d6z]# ls /tmp/1.txt.gz
/tmp/1.txt.gz
[root@linux-151 d6z]# du -sh /tmp/1.txt.gz
664K /tmp/1.txt.gz

  • 解压文件1.txt.gz ,存放到当前目录下,命名为2.txt

[root@linux-151 d6z]# gzip -d -c /tmp/1.txt.gz > ./2.txt
[root@linux-151 d6z]# ls
1.txt 2.txt
[root@linux-151 d6z]# wc -l 1.txt 2.txt64790 1.txt64790 2.txt129580 总用量
[root@linux-151 d6z]# du -sh 1.txt 2.txt
2.5M 1.txt
2.5M 2.txt
[root@linux-151 d6z]# ls /tmp/1.txt.gz
/tmp/1.txt.gz

  • 查看压缩文件1.txt.gz的内容,因为内容比较多,这里就不粘贴出来了。

[root@linux-151 d6z]# zcat /tmp/1.txt.gz

  • file /tmp/1.txt.gz 查看属性,

[root@linux-151 d6z]# file /tmp/1.txt.gz
/tmp/1.txt.gz: gzip compressed data, was "1.txt", from Unix, last modified: Thu Nov 9 20:33:33 2018
/tmp/1.txt.gz 压缩数据是1.txt,基于unix平台,最后修改时间是2018年4月16日星期一
6.3 bzip2压缩工具

bzip命令的格式:bzip2 [-dz] filename ,压缩文件时加不加-z都一样,-d 解压缩。
bzip比gzip压缩更小,所耗费的CPU资源也最大(压缩的文件也是最小的)

  • bzip2 1.txt / bzip2 -z 1.txt //压缩文件
  • bzip2 -d 1.txt.bz2 / bunzip2 1.txt.bz2 //解压文件
  • bzip -# 1.txt //#范围1-9,默认9
  • 不能压缩目录
  • bzcat 1.txt.bz2 //查看压缩文件
  • bzip2 -c 1.txt > /root/1.txt.bz2 //指定压缩文件路径,并且源文件存在
  • bzip2 -c -d /root/1.txt.bz2 > /tmp/1.txt.new2 //解压文件到指定路径下,并且源压缩文件存在
  • File 1.txt.bz2 查看文件属性

第一次使用bzip2命令时提示没有这个命令,我们用yum安装一下

[root@linux-151 d6z]# bzip2 1.txt
-bash: bzip2: 未找到命令
[root@linux-151 d6z]# yum install -y bzip2

  • 压缩文件1.txt

[root@linux-151 d6z]# bzip2 1.txt
[root@linux-151 d6z]# ls
1.txt.bz2 2.txt

  • 解压文件1.txt.gz

[root@linux-151 d6z]# bzip2 -d 1.txt.bz2
[root@linux-151 d6z]# ls
1.txt 2.txt

  • 压缩文件1.txt,并且指定路径,源文件存在

[root@linux-151 d6z]# bzip2 -c 1.txt > /tmp/1.txt.bz2
[root@linux-151 d6z]# ls /tmp/1.txt.bz2
/tmp/1.txt.bz2
[root@linux-151 d6z]# ls
1.txt 2.txt

  • 解压文件1.txt.bz2,并且指定路径重名命为3.txt,源文件存在。

[root@linux-151 d6z]# bzip2 -d -c /tmp/1.txt.bz2 > ./3.txt
[root@linux-151 d6z]# ls
1.txt 2.txt 3.txt
[root@linux-151 d6z]# ls /tmp/1.txt.bz2
/tmp/1.txt.bz2

  • 查看压缩文件1.txt.bz2 内容

[root@linux-151 d6z]# bzcat /tmp/1.txt.bz2

  • 查看文件1.txt.bz2的属性。

[root@linux-151 d6z]# file /tmp/1.txt.bz2
/tmp/1.txt.bz2: bzip2 compressed data, block size = 900k //bzip2压缩数据,大小为900k
6.4 xz压缩工具

xz命令格式:xz[-zd] filename 压缩文件加不加-z都可以,-d解压缩。
xz压缩文件比bzip2更小,所耗费的CPU资源也最大(压缩的文件也是最小的)

  • xz 1.txt / xz -z 1.txt //压缩文件

  • xz -d 1.txt.xz / unxz 1.txt.xz //解压缩文件

  • xz -# 1.txt //#范围1-9,默认9

  • 不能压缩目录

  • xzcat 1.txt.xz //查看压缩文件内容

  • xz -c 1.txt > /root/1.txt.xz //指定压缩文件路径,并且源文件存在

  • xz -d -c /root/1.txt.xz > 1.txt.new3 //解压文件到指定路径下,并且源压缩文件存在

  • file 1.txt.xz查看文件属性

  • 压缩文件1.txt

root@linux-151 d6z]# xz 1.txt
[root@linux-151 d6z]# ls
1.txt.xz 2.txt 3.txt

  • 解压文件1.txt.xz

[root@linux-151 d6z]# xz -d 1.txt.xz
[root@linux-151 d6z]# ls
1.txt 2.txt 3.txt

  • 压缩文件1.txt,并且指定路径,源文件存在

[root@linux-151 d6z]# xz -c 1.txt > /tmp/1.txt.xz
[root@linux-151 d6z]# ls
1.txt 2.txt 3.txt
[root@linux-151 d6z]# ls /tmp/1.txt.xz
/tmp/1.txt.xz

  • 解压文件1.txt.bz2,并且指定路径重名命为4.txt,源文件存在。

[root@linux-151 d6z]# xz -d -c /tmp/1.txt.xz > ./4.txt
[root@linux-151 d6z]# ls
1.txt 2.txt 3.txt 4.txt
[root@linux-151 d6z]# ls /tmp/1.txt.xz
/tmp/1.txt.xz

  • file 1.txz.xz

[root@linux-151 d6z]# file /tmp/1.txt.xz
/tmp/1.txt.xz: XZ compressed data //xz压缩数据。

  • 1.txt.xz<1.txt.bz2<1.txt.gz 说明xz压缩更严谨&#xff0c;但是所耗费cpu资源最大。

[root&#64;linux-151 d6z]# du -sh /tmp/1.txt.gz /tmp/1.txt.bz2 /tmp/1.txt.xz
664K /tmp/1.txt.gz
260K /tmp/1.txt.bz2
60K /tmp/1.txt.xz


转:https://my.oschina.net/u/3804357/blog/1796423



推荐阅读
  • Linux操作系统回炉复习各种常用命令集合解析
    Linux操作系统回炉复习各种常用命令集合解析猿码互联猿码互联今天Linux终端命令格式目标了解终端命令格式知道如何查阅终端命令帮助信息01.终端命令格式command[ ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 无损压缩算法专题——LZSS算法实现
    本文介绍了基于无损压缩算法专题的LZSS算法实现。通过Python和C两种语言的代码实现了对任意文件的压缩和解压功能。详细介绍了LZSS算法的原理和实现过程,以及代码中的注释。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
  • Windows7企业版怎样存储安全新功能详解
    本文介绍了电脑公司发布的GHOST WIN7 SP1 X64 通用特别版 V2019.12,软件大小为5.71 GB,支持简体中文,属于国产软件,免费使用。文章还提到了用户评分和软件分类为Win7系统,运行环境为Windows。同时,文章还介绍了平台检测结果,无插件,通过了360、腾讯、金山和瑞星的检测。此外,文章还提到了本地下载文件大小为5.71 GB,需要先下载高速下载器才能进行高速下载。最后,文章详细解释了Windows7企业版的存储安全新功能。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • 本文介绍了在Linux系统下进行文件压缩与解压的常用命令,包括tar命令的基本使用和参数,以及gzip、bz2、compress、rar和zip等不同格式的压缩与解压方法。同时还提供了常见的压缩文件后缀名及对应的解压命令,方便用户进行文件的压缩和解压操作。 ... [详细]
  • 【技术分享】一个 ELF 蠕虫分析
    【技术分享】一个 ELF 蠕虫分析 ... [详细]
  • mapreduce原理_MapReduce原理及WordCount实践
    参考链接:https:www.cnblogs.comlaowangcp8961946.html一、MapReduce流程1.1Mapreduce整体流程: ... [详细]
author-avatar
卡农的信仰144
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有