`
wx1569466809
  • 浏览: 72219 次
文章分类
社区版块
存档分类
最新评论

Linux普通文件压缩工具gzip、Bzip2、xz

 
阅读更多

第六章 文件压缩和打包

6.1 压缩打包介绍

Linux环境常见压缩文件类型:

.zip,.gz,.bz2,.xz,
.tar.gz,.tar.bz2,.tar.xz

压缩打包的目的

  • 方便文件传输
  • 节省磁盘空间
  • 减少传输花费的时间
  • 节省带宽

6.2 gzip压缩工具

>gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序,用于UNIX系统的文件压缩。我们在Linux中经常会用到后缀为.gz的文件,它们就是gzip格式的。

注意: gzip不能压缩目录文件
语法: gzip [options] [filename]
options:
-d:解压缩(=gunzip)
-#:指定压缩等级,此处#表示1~9数字,9压缩最好,默认为6(压缩等级越高,CPU消耗越高)

压缩

直接压缩

[root@adai002 d6z]# find /etc/ -type f -name "*conf" -exec cat {} >> 1.txt \;
创建一个文件并写入内容
[root@adai002 d6z]# du -sh 1.txt   文件压缩前大小
2.2M	1.txt
[root@adai002 d6z]# wc -l 1.txt   查看其内容总行数
32235 1.txt
[root@adai002 d6z]# gzip 1.txt  压缩
[root@adai002 d6z]# ls
1.txt.                   压缩后,源文件会消失
[root@adai002 d6z]# du -sh 1.txt.gz 压缩后文件大小
328K	1.txt.gz
[root@adai002 d6z]# file 1.txt.gz   查看文件属性
1.txt.gz: gzip compressed data, was "1.txt", from Unix, last modified: Thu Jun 22 14:54:25 2017

指定压缩目录

[root@adai002 d6z]# gzip -c 1.txt > /tmp/1.txt.gz
[root@adai002 d6z]# ls /tmp/1.txt.gz
/tmp/1.txt.gz
[root@adai002 d6z]# ls  
1.txt                压缩完成后源文件不会消失

查看压缩包内容

使用zcat命令:

[root@adai002 d6z]# zcat 1.txt.gz   可查看压缩文件内部内容

解压

直接解压

eg1:gzip -d

[root@adai002 d6z]# gzip -d 1.txt.gz  解压
[root@adai002 d6z]# ls
1.txt        解压后压缩文件消失
[root@adai002 d6z]# du -sh 1.txt
1.3M	1.txt      解压后较原文件变小   
[root@adai002 d6z]# wc -l !$
wc -l 1.txt
32235 1.txt

eg2:gunzip

[root@adai002 d6z]# gunzip 1.txt.gz
[root@adai002 d6z]# ls
1.txt

指定解压目录

[root@adai002 d6z]# gunzip -c /tmp/1.txt.gz > ./2.txt
[root@adai002 d6z]# ls
1.txt  2.txt
[root@adai002 d6z]# ls /tmp/1.txt.gz
/tmp/1.txt.gz         解压后原压缩文件不会消失
[root@adai002 d6z]# wc 1.txt 2.txt  内容不变
  32235  169760 1277475 1.txt
  32235  169760 1277475 2.txt
  64470  339520 2554950 总用量
[root@adai002 d6z]# du -sh *.txt  大小不变
1.3M	1.txt
1.3M	2.txt

6.3 bzip2 压缩工具

>bzip2 是一个基于Burrows-Wheeler 变换的无损压缩软件,压缩效果比传统的LZ77/LZ78压缩算法来得好。它是一款免费软件。可以自由分发免费使用。它广泛存在于UNIX&LINUX的许多发行版本中。bzip2能够进行高质量的数据压缩。它利用先进的压缩技术,能够把普通的数据文件压缩10%至15%,压缩的速度和解压的效率都非常高!支持大多数压缩格式,包括tar、gzip 等等。

注意: bzip2不可以压缩目录文件
语法: bzip2 [options] [filename]
options:
-d:解压缩
-z:压缩(=bzip2,所以可以不带该参数直接使用)
bzip2的使用方法同gzip。

压缩

[root@adai002 d6z]# bzip2 1.txt
[root@adai002 d6z]# ls
1.txt.bz2  2.txt
[root@adai002 d6z]# du -sh 1.txt.bz2
156K	1.txt.bz2      较gzip压缩程度更高
[root@adai002 d6z]# 

解压

[root@adai002 d6z]# bzip2 -d 1.txt.bz2  方法1
[root@adai002 d6z]# ls
1.txt  2.txt
[root@adai002 d6z]# du -sh *.txt
1.3M	1.txt
1.3M	2.txt
#####################################
[root@adai002 d6z]# bzip2 -z 1.txt
[root@adai002 d6z]# ls
1.txt.bz2  2.txt
[root@adai002 d6z]# bunzip2 1.txt.bz2   方法2
[root@adai002 d6z]# ls
1.txt  2.txt
[root@adai002 d6z]# !du
du -sh *.txt
1.3M	1.txt
1.3M	2.txt

说明: 同gzip,该命令也可指定目录进行压缩和解压。

案例

情景: 查看某目录文件时里面有一个文件1.txt,使用cat等命令查看其内容时出现如下提示:"1.txt" may be a binary file. See it anyway? 。此时按‘y’,屏幕会出现一堆乱码,赶紧按q退出,然后查找器原因:使用file命令!

[root@adai002 d6z]# ls
1.txt  2.txt
[root@adai002 d6z]# less 1.txt
"1.txt" may be a binary file.  See it anyway? 
[root@adai002 d6z]# file 1.txt
1.txt: bzip2 compressed data, block size = 900k

由file命令查看该文件信息后得知其为‘.bz2’压缩文件,即使用bzcat命令即可查看,并更改其文件名为正确格式以防再次被误导。

[root@adai002 d6z]# bzcat 1.txt
由于内容太多,在此不做演示
[root@adai002 d6z]# mv 1.txt 1.txt.bz2

6.4 xz压缩工具

>xz是一种压缩文件格式,采用LZMA SDK压缩,目标文件较gzip压缩文件(.gz或·tgz)小30%,较·bz2小15%。

注意: xz不可用于压缩目录文件
语法: xz [options] [filename]
options:
-d:解压缩
使用方法同gzip、bzip2,压缩程度更高。

压缩

[root@adai002 d6z]# xz 2.txt
[root@adai002 d6z]# ls
1.txt  2.txt.xz
[root@adai002 d6z]# du -sh 2.txt.xz
60K	2.txt.xz
[root@adai002 d6z]# file 2.txt.xz  
2.txt.xz: XZ compressed data
[root@adai002 d6z]# xzcat 2.txt.xz 查看压缩文件内容

解压

[root@adai002 d6z]# xz -d 2.txt.xz   方法1
[root@adai002 d6z]# ls
1.txt  2.txt
[root@adai002 d6z]# du -sh 2.txt
1.3M	2.txt
################################
[root@adai002 d6z]# unxz 2.txt.xz   方法2
[root@adai002 d6z]# ls
1.txt  2.txt

说明: 同gzip、bzip2,该命令也可指定目录进行压缩和解压。

转载于:https://my.oschina.net/1995blog/blog/1593402

分享到:
评论

相关推荐

    Linux压缩秘籍:gzip、bzip2、xz命令全解析

    Linux是一种开源的、基于Unix的操作系统内核,由林纳斯·托瓦兹(Linus Torvalds)于1991年首次发布。...7. **广泛的软件支持**:Linux拥有丰富的软件库,包括服务器软件、图形界面、办公软件、开发工具

    linux下的压缩与解压缩

    5. **xz**: `xz`是一种现代高效的压缩工具,压缩率通常高于`gzip`和`bzip2`。`xz filename`可以将文件压缩成`filename.xz`格式,`unxz filename.xz`则可以解压文件。 #### 三、压缩文件格式解析 Linux系统支持多种...

    Linux 压缩解压缩

    - 要解压缩gzip文件,使用 `gunzip 文件名.gz` 或 `gzip -d 文件名.gz`。 2. **bzip2命令** - `bzip2` 使用BZIP2算法,压缩率比gzip更高,但压缩和解压缩速度较慢。 - 压缩:`bzip2 文件名`,生成的文件后缀为 `...

    linux文件压缩命令

    gzip是最常用的Linux文件压缩工具,它支持单个文件的压缩和解压缩。使用`gzip`命令,您可以将文件大小显著减小。例如,要压缩一个名为`example.txt`的文件,可以使用以下命令: ```bash gzip example.txt ``` 这将...

    编译好的bzip2库version:bzip2-1.0.6-pack.rar

    bzip2是一款高效的数据压缩工具,由Julian Seward开发,广泛应用于各种操作系统,包括Linux、Unix、Windows等。bzip2采用Burrows-Wheeler变换(BWT)和霍夫曼编码(Huffman Coding)相结合的算法,提供比传统gzip更...

    Linux教程-linux文件压缩.docx

    本文将详细介绍几种常用的文件压缩和解压缩工具,包括compress、uncompress、gzip、gunzip、bzip2、bunzip2、xz、unxz、zip以及unzip。 1. compress 和 uncompress: 这两个命令基于ncompress包,用于压缩和解压缩...

    xz文件解压工具

    然而,由于其压缩过程涉及复杂的计算,因此解压缩速度相对其他如gzip或bzip2较慢。尽管如此,对于存储空间有限的情况,`xz`仍然是一个理想的选择。 在Linux中,解压`xz`文件主要依赖于`xz-utils`工具集。这个工具集...

    linux 压缩解压缩命令

    这里,我们将详细探讨几个常用的Linux压缩和解压缩命令,包括`tar`、`gzip`、`bzip2`以及它们的组合使用。 1. **`tar`命令**:`tar`是用于打包文件或目录的命令,它并不直接进行压缩,但可以与压缩工具结合使用。`...

    linux的压缩命令

    本文将详细介绍Linux中的几个常用的压缩与解压缩命令,包括`gzip`、`bzip2`、`tar`、`zip`和`unzip`等工具的使用方法及其各选项的功能,帮助用户更好地理解和掌握这些命令。 #### gzip `gzip`是最常用的压缩工具之...

    linuxmingling.rar_文件压缩

    Linux提供了多种压缩工具,如gzip、bzip2、xz和tar。`gzip`是最常用的压缩工具,其命令格式通常为`gzip 文件名`,压缩后的文件会带有.gz后缀。解压使用`gunzip`命令。`bzip2`提供更好的压缩率但相对较慢,压缩和解压...

    tar-1.13.19-4.src.rar_linux_linux 压缩文件_tar 压缩源码_tar1.

    虽然`tar`本身并不进行压缩,但它可以与各种压缩工具结合使用,如`gzip`、`bzip2`和`xz`。例如,使用`gzip`压缩: ```bash tar -czvf archive.tar.gz file1 file2 directory/ ``` 解压缩时: ```bash tar -xzvf ...

    Linux中常用的压缩和解压缩命令汇总.docx

    在Linux操作系统中,由于其开源和自由的特性,存在多种压缩和解压缩工具,每种工具支持不同的文件格式。以下是一份详细的Linux中常用的压缩和解压缩命令汇总: 1. **`.tar`**:`.tar`文件是简单地将多个文件或目录...

    linux查找及压缩

    4. `tar`命令:打包文件和目录,不压缩时使用`.tar`后缀,配合其他压缩工具时,如`.tar.gz`(gzip)、`.tar.bz2`(bzip2)或`.tar.xz`(xz)。 打包一个目录: ```bash tar -cvf archive.tar directory/ ``` ...

    LINUX教程之11-linux下的压缩文件

    本教程将深入探讨Linux下的压缩技术,包括常见的压缩格式、命令行工具以及如何有效地管理压缩文件。 首先,让我们了解一下Linux中常用的压缩格式: 1. **gzip**: 最常用的压缩格式之一,支持单个文件压缩,生成的...

    Linux压缩解压缩

    本篇文章主要探讨了Linux环境下几种常见的压缩文件格式及其处理方法,包括使用`tar`命令与其他压缩工具如`gzip`, `bzip2`, `compress`的配合使用。 首先,了解两个基本概念——打包(packing)和压缩(compressing...

    linux文件操作,linux下关闭tomcat失效的处理方法,linux下压缩文件

    3. `bzip2`:提供比`gzip`更好的压缩率,但速度较慢,如`bzip2 file.txt`。解压用`bunzip2`。 4. `xz`:提供最高的压缩比,但消耗更多CPU资源,如`xz file.txt`。解压用`unxz`。 5. `7z`:非开源但压缩效率高的...

    Linux压缩解压缩方法汇总

    ### Linux压缩解压缩方法详解 #### 一、前言 对于初学者而言,Linux系统中的文件管理和压缩方式可能显得较为复杂。与Windows操作系统常见的`.zip`和`.rar`压缩文件不同,Linux支持多种多样的压缩格式,如`.gz`、`....

    linux系统下文件的归档、压缩和解压操作

    Linux 系统中常用的归档命令是 tar 命令,而压缩命令则有 gzip、bzip2 和 xz 等。 tar 命令是 Linux 系统中最常用的归档命令,它可以将多个文件或目录打包成一个文件。tar 命令的基本语法是:tar [选项] 文件名,...

    linux命令《备份压缩》

    4. `tar`:不直接进行压缩,但它可以将多个文件和目录打包成一个档案文件,然后可以配合gzip、bzip2或xz进行压缩。例如,`tar -cvf archive.tar /path/to/directory` 打包directory及其内容,`tar -jcvf archive.tar...

Global site tag (gtag.js) - Google Analytics