压缩和解压缩

今天我们所讲一些压缩以及解压缩的内容,可以方便我们去传输一些数据较大的文件,以及可以降低我们的内存使用率, 节省空间。我们常用的工具对单个文件进行压缩有4种,对于多个文件进行打包压缩有2种。

1、compress(单个文件压缩)

    压缩后的文件后缀名都是.Z结尾

    compress file1     对单个文件压缩

       -d       解压缩文件(uncompress或者zcat file.Z > file也可以解压缩)

       -c > file1 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。

      压缩和解压缩

    -f       默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1

    -v 显示详细过程,可以查看压缩进程

     压缩和解压缩

    compress 不经常用,压缩比相对于其它比较低。并且compress -d 不能补齐

2、gzip (单个文件压缩)

    压缩的文件后缀为  .gz

    gzip file  压缩file单个文件

    -d    解压文件 (gunzip或者zcat file.gz > file都可以解压缩)

    -c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。

    -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1

    -v 显示详细过程,可以查看压缩进程

    -# 数字越大,压缩比越高,速度越慢,文件越小。

    -1 等于 – -fast

    -2,3,4,5,6(默认),7,8

    -9 等于 – -best

    压缩和解压缩

    这个gzip 相对于compress较为常用,这个对于-d 后面就能补全,大家可以试试。

3、bzip2(单个文件压缩)

    压缩的文件后缀名都为 .bz2

    -d 解压文件 (bunzip或者bzcat file.bz2 > file)

    -c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。

    -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1

    -v 显示详细过程,可以查看压缩进程

    -k 保留原文件

    压缩和解压缩

    -# 数字越大,压缩比越高,速度越慢,文件越小。

        -1 等于 – -fast

        -2,3,4,5,6,7,8

        -9 等于 – -best(默认)

    压缩和解压缩

    相对于前面两个这个多个-k,可以直接保留原文件了。

4、xz(单个文件压缩)

    压缩的文件后缀名都为 .xz

    -d 解压文件 (xzcat)

    -k 保留原文件 权限不变

    -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1

    -v 显示详细过程,可以查看压缩进程

    压缩和解压缩

    -# 数字越大,压缩比越高,速度越慢,文件越小。

        -0 等于 – -fast

        -1,2,3,4,5,6(默认),7,8

        -9 等于 – -best

    压缩和解压缩

xz 压缩也是多个-k选项,能直接保留原文件,相对于bzip2 多个-0 ,这个也经常用。我们可以在centos官方压缩包里面看到大多数都是xz   bz2   gz

5、zip (打包压缩)

    压缩生成的文件后缀名都是.zip

    zip -r 压缩后新名字 (文件或目录)

    unzip解压缩

    |zip 将生成的文件名 –

    可以将管道前的输出结果转为文件并压缩。通过此方式压缩的文件只能使用“unzip -p 压缩包 > 新文件 ”来解压缩

    如果只输入zip -p 就是预览压缩包里面的内容

    压缩和解压缩

6、tar(打包压缩)*****最为重要

        -cf 创建的包名字  原文件(可以指定多个)

        -tf 包名字   显示包中的文件名

        -tvf 详细显示包中的文件名

        -rf 包名字 新文件名(可以指定多个)      添加文件进入以生成的包里面

        – -delete -f 包名字 被删除的文件名(可以指定多个)

        -xf 包名字 解出所有的文件到当前目录

            -xf  包名字 文件  解所指定的文件到当前目录

            -xf  包名字 -C 指定目录    解锁指定的压缩包到指定目录

    压缩和解压缩

    -v 显示过程    

    -Jcf 创建包的名字(.tar.xz) 原文件(可以指定多个) 打包并用xz压缩

    -jcf 创建包的名字(.tar.bz2) 原文件(可以指定多个) 打包并用bzip压缩

    -zcf 创建包的名字(.tar.gz) 原文件(可以指定多个) 打包并用gzip压缩

    压缩和解压缩

    我们可以根据压缩后的大小能看出来压缩方式不一样。

    分割文件与合并文件

    split –b Size –d tar-file-name prefix-name 将tar包分隔为多个文件 (分割文件)

    压缩和解压缩

    cat 被分隔出的多个文件名 > 单个文件名   (合并文件)

    压缩和解压缩

    掌握以上的六种技能,就可以对一些分散的文件集中化处理,希望能对大家有帮助。

原创文章,作者:In summer,如若转载,请注明出处:http://www.178linux.com/84504

(0)
In summerIn summer
上一篇 2017-08-12 15:30
下一篇 2017-08-12 16:39

相关推荐

  • Linux软件包管理工具yum详解

    yum介绍 yum客户端的使用 配置文件项作说明: 案例repo配置文件。 创建yum源命令(yum-config-manager) yum list相关命令 yum安装 yum更新和升级 yum查找和显示 yum删除程序 查看仓库 实战演练本地yum仓库(光盘) YUM内置变量 创建YUM仓库(http) yum介绍 yum命令是在Fedora和RedHa…

    Linux干货 2016-09-07
  • 自制linux系统

    本文主要通过裁剪现有Linux系统,打造一个属于自己的Linux小系统,让其能够装载网卡驱动,并配置IP地址,实现网络功能。 自制linux系统 步骤概述: 1、新建一个硬盘2、在该新硬盘上新建两个分区,一个当boot分区,一个当/分区3、格式化并且挂载两个分区4、安装grub至目标磁盘5、为grub提供配置文件6、复制内核文件和initrd文件7、创建目标…

    Linux干货 2016-09-13
  • centos6安装docker

    使用的操作系统是是centos6.3,按照官方的推荐的配置,把linux内核升级到3.8以上。安装步骤如下: 1、升级内核版本(包含aufs) cd /etc/yum.repos.d     wget http://www.hop5.in/yum/el6/hop5.repo   …

    Linux干货 2016-05-05
  • bash(awk递归)N阶【斐波那契数列】多种实现(含递归解析图)

    【版权所有】转载请说明作者【Jev Tes】        【本文导航】        零、关于斐波那契数列        一、输入参数合法性判断       &nbsp…

    Linux干货 2016-11-24
  • 将两个局域网用openvpn连接起来

    考虑到我们做集群的时候需要用到可能有20台机器,可能我的要求跟别人的不一样的,我需要做20台左右的集群,不仅仅是会,而且需要非常熟练的搭建,最后通过脚步一键自动化部署安装。 目前我有两台电脑,一台可以运行7台,另一台可以运行12台左右,刚好可以满足的我的要求,但是我两台电脑都是设置的nat模式的网络,为什么我非要配置nat模式呢,根据集群架构思想,为了保证架…

    Linux干货 2017-05-01
  • 马哥教育网络班22期+第01周课程练习

    一、描述计算机的组成及其功能:     根据冯·诺依曼体系结构,把计算机划分为五大部件:运算器、控制器、存储器、输入设备、输出设备。 运算器(加法器):cpu的核心部件,也是计算机存在的价值之一,其采用二进制方式进行计算(因为电阻的存在,使得十进制无法精准处理);控制器:控制CPU读指令[立即数和间接数],指令含有运算器需要的数…

    Linux干货 2016-08-12