【26期】Linux第五周学习小总结

    第五周的学习内容很丰富, 从查找到压缩打包,到软件包的管理,其中尤其是以压缩的内容最为丰富,而且庞大的选项让人绝望,那我今天就总结了一下压缩的一些东西,和大家一起分享。

    为什么会产生压缩工具呢?因为我们的现在的很多文件会利用到的东西很多,电脑的读存速度也越来越快,一些大的文件在传输和使用上就会很麻烦,虽然运算速度很快但是会大量占用我们的系统资源和硬盘的空间,缩小了我们的可使用空间,而压缩工具就是尽可能在不破坏原文件的情况下,通过一些算法,压缩我们的文件,提升我们的运算和传输速度。

    首先对于我们的第一个认识的压缩工具就是 compress 这个工具,英文的翻译就是压缩的意思,既然是压缩工具就能够压缩文件,使用方法如下:

    compress [ -f ] [ -v ] [ -c ] [ -V ] [ -r ] [ name …  ]

        -f 对硬连接的文件进行强制压缩,其他同inode的文件硬连接数减一

    【26期】Linux第五周学习小总结

    图里我们可以看出来我们新建的硬连接文件用普通的压缩根本就不能压缩,加了-f之后就完成了压缩,compress 压缩出来的文件以.Z结尾

        -v 显示详细过程

    【26期】Linux第五周学习小总结

    我们震惊的发现我们压缩比无比惊人,从50M压缩到16k,其实不然,我们的这个test2文件,是利用dd if of 填充完成的,其实其中的东西并不多,都是一些重复的空行之类的,所以压缩比才会如此惊人!

        -c 将结果打印在我们的屏幕上,由于是二进制文件我们看不懂,可以利用我们的重定向来输出出来,但是相当于新建了一个文件,权限会发生变化

        -V 显示指令版本及程序预设值

    【26期】Linux第五周学习小总结

        -r 递归

    【26期】Linux第五周学习小总结

    我们压缩tmp文件夹,自动递归的去压缩我们的文件夹下的文件。

    那有压缩就一定有解压缩要不然怎么打开呢。。。下面是我们的三种解压缩

    uncompress

    【26期】Linux第五周学习小总结

    ②compress -d 文件名

    【26期】Linux第五周学习小总结

    ③zcat 文件名 > 文件名

    【26期】Linux第五周学习小总结

    上述了那么多的选项,其实compress已经算是退出了历史舞台,取代它的有好几种压缩工具,接下来我们就看一下”zip”小家族

    gzip 

    gzip [OPTION]… FILE …

    【26期】Linux第五周学习小总结

    直接后面跟文件名,直接压缩,不保留原文件,自带后缀

        -c 可以指定将压缩或解压缩的结果输出至标准输出,也就是可以用重定向输出文件不过不要忘了后缀名

    【26期】Linux第五周学习小总结
        -d 也和上面的用处相差不大,也都是解压

        -# 1-9 :可以指定压缩比,9为最大,越大压缩比越大,默认为6

    【26期】Linux第五周学习小总结

    我们可以看到我们的压缩问及一级级的往下排,但是我们也看到一些8级的比9级的还要小,这是因为到了后面的压缩的就会有写误差,所以会造成这种现象。

    bzip2

    bzip2 [OPTION]… FILE …

        -k 保留原文件(默认不保存)

    【26期】Linux第五周学习小总结
        -c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。 bzip2 -c 文件名 > 
        -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1.
        -v 显示详细过程。
        -# 数字越大,压缩比越高,速度越慢,文件越小。
        -1 等于 –fast
        -2,3,4,5,6,7,8
        -9 等于 –best (default)

    很惊人的压缩比,bzip2的压缩比很可怕,就是zip的9都低,所以占用的资源也很多,所以压缩时很慢!

    【26期】Linux第五周学习小总结

    这些上面的选项我在上面都一一试过了,用户都差不多,就不在一一的列举了。

    xz

    xz [OPTION]… FILE … 

        -d 解压缩
            xzcat 
        -k 保留原文件
        -f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1.
        -v 显示详细过程。
        -# 数字越大,压缩比越高,速度越慢,文件越小。
        -0 等于 –fast
        -1 -2,3,4,5,6(default),7,8
        -9 等于 –best 

        zip

        .zip (后缀名)
        unzip 解压缩
        |zip 将生成的文件名 –
        可以将管道前的输出结果转为文件并压缩。通过此方式压缩的文件只能使用“unzip -p 压缩包 > 新文件 ”来解压缩

        unzip -p 预览解压缩后的内容到屏幕,可以配置重定向将结果保存到指定文件,权限会发生变化。

    好了,上述就是一些关于压缩的小知识,看着那么多的压缩工具,其实很简单的我们记住基本的几个-d解压缩,-c重定向输出,-k保留原文件,-#压缩几级,-f压缩硬连接,然后其他的边角就什么时候用什么时候man吧。


    

    

    


原创文章,作者:努力!奋斗!,如若转载,请注明出处:http://www.178linux.com/84444

(0)
上一篇 2017-08-12 14:21
下一篇 2017-08-12 15:30

相关推荐

  • nl命令使用解析

    nl    命令功用: nl – number lines of files 显示文件内容,并列出行号   命令样式: nl [OPTION]… [FILE]…   命令选项: -b:正文行号,参数为样式style -n:行号格式,参数为格式format -w:设定行号所占位数,参数为…

    Linux干货 2016-10-20
  • N24-vt.lee-学习宣言

    学习宣言:  好好学习 天天向上!!!  2016-10-26

    Linux干货 2016-10-26
  • CentOS上配置rsyslog客户端用以远程记录日志

    rsyslog是一个开源工具,被广泛用于Linux系统以通过TCP/UDP协议转发或接收日志消息。rsyslog守护进程可以被配置成两种环境,一种是配置成日志收集服务器,rsyslog进程可以从网络中收集其它主机上的日志数据,这些主机会将日志配置为发送到另外的远程服务器。rsyslog的另外一个用法,就是可以配置为客户端,用来过滤和发送内部日志消息到本地文件…

    Linux干货 2015-02-14
  • 如何查找Ubuntu系统中占用磁盘最大的那些文件夹

    根据马哥的指导,我们需要用df和du两个磁盘管理命令来查看 先用df来了解磁盘大致的空间情况: 然后用du -sh 某个folder来查看哪个文件夹占用多少空间 然后我们可以用du /homewebown | sort -nr | more 可来定位具体是哪个文件夹占用空间过大。

    Linux干货 2016-11-06
  • 马哥教育网络班21期+第6周课程练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@centos ~]# cp /etc/rc.d/rc.sysinit /tmp/ [root@centos&nbs…

    Linux干货 2016-07-27
  • 学习开始拼搏、加油、努力

          搏一搏单车变摩托,用4个月时间为自己创造一个更好的未来,欧耶!。。。

    Linux干货 2016-10-28