精华内容
下载资源
问答
  • 压缩软件间的竞争也是很激烈的啊,至少现在ARJ格式的文件基本见不到了……这里提供的也是一个竞争的失败者,IMP格式没有任何优点,但是唯一的好处就是:这个格式WINRAR、WINZIP和7Z都不认。接下来的事情,就不用再...
  • 白话做自由软件的几点好处

    千次阅读 2008-10-31 11:46:00
    增强软件的生命力软件如果开源,或许会被放在你的硬盘,光盘或者某个压缩文件的角落里,从此无人问津,你也会慢慢忘记它的存在。而通过发布自由软件,它很有可能成为一个有用的、功能较齐全的软件,从而体现其强大...


    一. 增强软件的生命力

    软件如果开源,或许会被放在你的硬盘,光盘或者某个压缩文件的角落里,从此无人问津,你也会慢慢忘记它的存在。而通过发布自由软件,它很有可能成为一个有用的、功能较齐全的软件,从而体现其强大生命力。

    二. 可以不断的完善你当初的想法,提高你的认识,也学到了更多的知识。

    三. 做自由软件后时间会更有效率。
    更多的人为你测试,并提出修改意见,你不在荒废时间,你会发现时间不够用了,同时也更有效率。

    四. 当它被人使用时,你会感到一点自豪。帮助别人能带来更大的快感,提升你的人气。
    如果被人使用到正式系统,也许你还会收到一点小小的酬劳呢。
    展开全文
  • 今天,就来讲讲压缩软件的故事吧。 方法/步骤 压缩软件的原理 为什么压缩软件能够减少文件体积?无论是什么压缩软件,其目的就只有一个——减少冗余数据。这是什么意思呢?例如某行字是“0000111...

               压缩软件大家都用得多了,老司机们从网上下载个什么资源,很多情况下都会下载到压缩文件。压缩文件的好处有很多,一来减少体积节省流量,二来打包方便可以一次性容纳N个文件,要使用这些压缩文件,压缩软件往往是必不可少的。

    压缩软件使用简单,但其实很多朋友并没有意识到,这里面也存在一些大坑。今天,就来讲讲压缩软件的故事吧。

    方法/步骤

    1. 压缩软件的原理

      为什么压缩软件能够减少文件体积?无论是什么压缩软件,其目的就只有一个——减少冗余数据。这是什么意思呢?例如某行字是“000011111”,就可以压缩为“0(4)1(5)”,在保证数据没有受损的同时,减少其占用的体积。

      哪种压缩格式/软件最好?看完秒懂

    2. 上面的例子比较简单,实际上压缩软件的算法是复杂且多种多样的。

      不同的压缩软件会使用不同的字典,用来查找压缩冗余的数据,算法结合字典在很大程度上决定了压缩的效率。

      我们经常会看到不同的压缩文件格式,例如ZIP、RAR、7Z等,实际上这只是不同的压缩规范,就算是同样的格式,例如大家都是ZIP,其中的压缩算法可能也是不一样的,ZIP就可以使用Shrinking、Reducing、Deflate等算法。

      某个压缩文件压缩率高不高,不但要看其文件格式,更要看其具体使用的算法(例如ZIP和7Z都可以使用Deflate算法)。

      至于用哪个压缩软件最高效,实际上绝大多数的压缩软件,都没有自己的压缩算法,本质上只是马甲。

      主流的压缩文件格式大致有三种,分别是ZIP、RAR和7Z,它们分别来自Winzip、Winrar以及7-Zip,下面我们来说说这三种格式及其背后的压缩软件吧。

    3. ZIP:事实上的标准格式

      这是一个历史非常悠久的压缩格式,也是事实上的标准格式。

      你可以看到各大软件商发布软件时,提供的往往都是ZIP格式的压缩文件包,各大操作系统也对ZIP格式有着比较好的支持,例如Win系统中就可以直接访问ZIP文件中的内容。

      不过,这个最被广泛支持、被最多人认同的格式,其开发者的命运却有点悲情——ZIP格式的发明者Philip Katz英年早逝,37岁就因为酗酒去世了。

       

    4. 在DOS操作系统仍在盛行的时代,最流行的压缩格式是ARC。ARC效率慢且封闭,使用对应的压缩软件还要付费,Philip Katz对其不满,于是Philip Katz开发出了PKARC这款完全兼容ARC的软件。

      不料因为此事,Philip Katz被ARC告上法庭并败诉,不得不放弃PKARC的开发。

      Philip Katz并没有放弃压缩软件的钻研,他随后开发出了PKZIP这款软件,首创了ZIP格式。就算到了今天,你开启任何ZIP文件,仍可以在文件头中看到“PK”的字样,这就是Philip Katz名字的缩写。

      ZIP的表现全方面压制了ARC,速度更快压缩比更高,而且Philip Katz开放了ZIP格式,任何压缩软件都可以创建ZIP。很快,ZIP就成为了最流行的压缩标准。

      ZIP是一种开放的格式,Philip Katz的PKWare公司并没有为ZIP格式注册专利。ZIP格式被多家软件商所利用,Winzip这款软件也是在那时候崛起的。Nico Mak利用开放的ZIP格式开发了Winzip,兼容Win系统。借着Win崛起的东风,Winzip成为了最流行的压缩软件之一。

    5. 再例如大家都很熟悉的Winrar,也使用了ZIP的算法,同时没有开放RAR算法给其他软件,这令Winrar一度成为最全能的压缩软件,一跃成为主流。

      Philip Katz的结局并不好,在2000年,他在一家汽车旅馆中去世,死时还握着酒瓶。

      ZIP的开放令其成为了最流行的格式,也是事实上的标准格式,家家户户都支持它。不过它也存在一些缺点。例如,它的压缩率相比RAR和7Z偏低,对Unicode字符支持并不好,缺乏修复功能,加密安全性一度堪忧等,RAR和7Z都令ZIP感到巨大的竞争压力。

      哪种压缩格式/软件最好?看完秒懂

    6. RAR:起于江湖盛行于中国

      在国外,其实RAR的流行程度和ZIP有差距;但在中国,RAR当之无愧是最流行的压缩格式。RAR格式源于Winrar这款软件,和ZIP不同,RAR格式并不开放,只免费发放了其解压组件。

      这意味着别的压缩软件只能解压RAR,不能创建RAR。和Winzip相比,RAR能压缩、解压ZIP和RAR,Winzip却不能压缩RAR,因此Winrar利用专利,取得了竞争优势。

    7. 这其实尚不足以让RAR流行起来,毕竟和ZIP对比,RAR的专利算法虽然压缩率更高一些,但速度也较慢。令RAR真正崛起的契机是破解组织的力挺——破解游戏往往使用了Winrar来压缩,而中国又是盗版游戏最横行的市场,RAR由此在中国开始流行。

    8. 游戏盗版行业可谓是不折不扣的灰色地带,RAR绝对称得上是起于江湖。

      为什么破解游戏喜欢使用RAR呢?

      首先,RAR对Unicode字符支持好,很多游戏都不是英文版,用ZIP压缩可能会出现乱码,而RAR不会;其次,RAR很早就支持分卷压缩,不少破解游戏体积都很大,要把它们装进盗版光盘,就得用RAR分卷。

      而RAR的分卷文件,一度只能用Winrar开启。于是,盗版游戏玩家们纷纷成为了Winrar的拥簇,在中国Winrar成为了最万能的压缩软件,流行度完全盖过了Winzip。

       

      哪种压缩格式/软件最好?看完秒懂

    9. RAR的成功,一方面是由于专利保护,令其处在了竞争的有利位置上;另一方面它的确也比较先进。RAR压缩率稍高,对分卷压缩支持好,早早支持AES加密安全性好,而且还自带修复功能——不少由于光盘划花导致的数据错误,就是靠RAR的CRC修复得而完璧归赵的。

      不过,RAR的封闭始终是个问题,它最开始是收费软件,现在针对中国发行了带广告的免费版,但人们还是更倾向于使用破解版。随着7-ZIP的出现,万能压缩软件越来越多,虽然RAR格式仍在流行,但很多人已经不再使用Winrar这款软件。

    https://sparanoid.com/lab/7z

     

    10. 7-Zip在国内不流行的一大原因可能是界面太简陋,但就是这样的风格,社会你7哥,人狠话不多

    最良心的一点是,7-Zip和7Z是完全开源的!因此,它的内核被很多其他压缩软件所使用,国产压缩软件通常就是7-Zip的忠实拥簇,压缩软件中的“坑”也由此而来。

    7-Zip开源,但它使用了LGPL开源协议,某个软件如果使用了7-Zip的源码,按理来说也必须开源。但国内的“X压”等软件非但没有开源,还在压缩文件的文件头中故意加入无助于压缩的私货,让其他压缩软件无法解压。

    用了人家的代码还故意制造不兼容,对于这种行为,只想说一句,“我从未见过如此厚颜无耻之人”!

    11. 总结

    总体来说,在压缩文件格式方面,笔者是比较推荐大家压缩成ZIP格式的,毕竟这个格式拥有着最广泛的支持。

    在压缩软件的选择上,大家可以优先考虑7-Zip,对分卷压缩有特殊要求的朋友,则可以使用Winrar。对于某些不厚道的国产压缩软件,大家还是少碰为好,这种坑不仅坑自己,也会坑到别人。

    其他压缩软件对比:

    WinRAR、7-Zip、好压、360压缩、快压 五软件性能对比
    1:谁压的最小(好压、360压缩自有格式压缩文本)非常优秀。快压整体成绩高,但zip格式和自有格式大小相同。

    2:谁压的最快:7-Zip和好压速度名列前茅,快压则比较慢(个人认为快压算法可能自主格式和zip是一样的,360压缩速度最快和文件最小,实际zip和7Z格式)。

    3:谁格式最全:7-Zip超强资源提取工具,exe、dll等都可以解压出来。
    (一)WinRAR特点:
    1:预测功能:未开始压缩前,可预测压缩后大小和时间。
    2:超强文件管理工具,可做资源管理器使用。
    3:超强修复功能,尤其是RAR的修复。
    (二)好压
    1:可以挂载光盘镜像。

    2:丰富插件扩展,在压缩包内查看图片。
    (三)360压缩
    1:不仅解压,在压缩时也支持RAR格式。
     (四)快压
    1:自有的KZ格式,具有超强的压缩能力,即使像jpg图片也能继续压缩。
    2:支持虚拟光驱。

    在上述分析当中,我会推荐7-Zip和好压两个软件(WinRAR是收费的,算法没有什么改观)。

    1:7-Zip为首选软件,最干净压缩率极高,提取功能优异,为很多压缩软件效仿。

    2:其次是好压,简单易用功能全面。

    3:360压缩整体性能比其他软件弱,不过对使用者习惯上还很有一套。
    总之,国产软件都有不错成绩,希望以此为荐,做出更好的产品。

    个人推荐2345好压和7-zip 这两个可以一起下载,对于做CTF和日常使用都不错,用好压是因为不用解压就能看到图片,还有其他小功能。

     

    展开全文
  • 最近在做项目的时候用到了gzip,发现它的压缩能力还是很强大的,基本能够压缩50%的...根据百度百科的解释:gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序。 减少文件大小有两个明显的好处,一是可以减少存...

    最近在做项目的时候用到了gzip,发现它的压缩能力还是很强大的,基本能够压缩50%的文本文件大小。以前有所了解,但不够深入,现在详细了解下。

    什么是gzip?

    根据百度百科的解释:gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序。
    减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。所以gzip被广泛用在网络传输上,毕竟能够节省传输的时间嘛。gzip算法了解

    在哪里使用gzip?

    我使用的php的codeigniter框架,在框架中可以通过配置开启gzip压缩。原理是加载zlib扩展,然后调用相关函数进行压缩,参考。这里有一个很明显缺点是,你不能过早地输出一些东西给你的浏览器。什么意思呢,就是你不能在压缩前,就输出内容,一个空格也不行,否则会出现整个页面的空白。比如,你有一个变量忘记设置了,出现了php警告,那么整个页面都显示不出来。这无疑是很不友好的。当然,生产环境很少出现提前输出的问题,但是,万一有问题,整个页面显示不了也太致命了。而且还有别的缺点,比如无法对javascript,css和其他图片文件进行压缩,所以对于web传输来说,使用php不是一个最好的选择。

    更好的选择,我觉得是通过web服务器进行压缩。令人高兴的是,各大主流web服务器都提供了 gzip 压缩功能呀。比如说,在 nginx 服务器中,只要在配置文件 nginx.conf 中加上一些gzip的配置,参考, 一个简单的配置即可。注意在 gzip_types 这个配置项加上你需要压缩的文件类型。

    我做了对比试验:

    • 压缩前:
      595126-20180906195228947-962195491.png

    • 压缩后
      595126-20180906194811878-523935150.png

    93.5kb变成30多kb, 差别还是很大的。

    gzip对于不同类型文件的压缩率?

    我没有自己做试验,参考网上的文章,gzip 对于文本文件的压缩率较高,对于图片的压缩率有限。

    gzip的优点和缺点

    优点当然很明显了,就是可以减少文件大小,提高传输的速率。 缺点是,压缩的过程会增加服务器的运算量,影响服务器的性能。所以,gzip的压缩级别不能开太高了。这里还有一个优化方案,可以让nginx加载http_gzip_static_module 模块,看名字就知道了,就是自己先生成一个同名的静态的gzip文件,这样就不用每次都压缩了。可以参考

    转载于:https://www.cnblogs.com/Andres/p/9600083.html

    展开全文
  • 上一讲我们曾经看到过一个gpgcheck=0,我们来稍微了解一些,仅仅是了解。     ...看出GPG就是不一种对称加密,gpgcheck就是不进行签名检查。...yum管理软件的好处就在于自动解决依赖关系,但是其实...

    上一讲我们曾经看到过一个gpgcheck=0,我们来稍微了解一些,仅仅是了解。

     

     

     

    看出GPG就是不一种对称加密,gpgcheck就是不进行签名检查。后面的enabled=1表示启用这个repo。

    RPM工具管理软件包

    我们上一讲使用的基本上都是yum,当然有些到官网安装的有的使用的rpm -ivh url的方式。

    yum管理软件的好处就在于自动解决依赖关系,但是其实呢,yum安装软件最后还是调用的rpm。我们一般也直接用yum去安装会比较方便,不过我们还是来学一些rpm。

    先来看rpm的帮助,其实主要还是学习这些选项是什么意思。

     

    -q一般是在查找的时候用,指的是查找某一个特定名字的包。-e是卸载的时候用的,-h就是说安装的时候会把进度条用码标线来显示,一般搭配v使用效果更佳。-i是直接安装包,也就是说rpm包里的文件释放,并且放在合适的位置。

     

    -U是更新。

     

    -v是显示更多的细节。有些额外选项下面也列出来了。rpm相对于yum来说可以说最大的不同就在于yum使用了源,而rpm没有,而yum源第一提供了很多软件,所以我们可以yum -y install httpd就可以装软件包名字是yum的软件,而rpm直接加软件名是不行的,它只有两种安装方式,一是本地安装,也就是把某个rpm包用wget或者curl下到本地,然后用rpm安装,二是后面直接加url,从网址安装,显然直接用第二种会更快。

     

    这里我们来了解一下软件包的命名,看到上面这个httpd软件包的全称应该是httpd.x86_64.2.4.6-80-el7.centos.1.rpm。各个部分是什么意思呢?可以用yum info看一下。

    names是httpd,这个是我们直接可以yum安装的,架构是x86_64,x86是一种复杂指令集,现在还有x64,arm等,_64位是64位,也就是cpu里面的数据线是64根。软件版本是2.4.6。发行的平台是cetnos7,el是企业版的意思,后面的1是发行次数,是一个子版本,就和matlab每年都要出一个a,一个b是一个意思。80暂时不知道什么意思。

    使用rpm安装需要考虑很多,一时你的操作系统版本,二是系统架构。我们都有命令可以看的。

     

     

     

    三是考虑依赖关系,因为rpm不会帮我们自动解决依赖关系。四是rmp包的版本,因为涉及到软件的间兼容问题。

     

    yum当然后面也可以直接跟url,下面的例子里由于我zabbix上一讲装过了,我用了reinstall。

     

    因为yum解决了依赖关系以后靠的还是rpm,所以有rpm的功能也不奇怪。下面演示rpm的时候,我们得找一个有依赖关系的软件,不然体现不出来yum的优势。我们就用ntfs-3g-devel,ntfs-3g是一个可以让linux支持ntfs文件系统的软件。

     

    我们先来试试如果平台不对会如何。

     

    复制第一个的链接地址来试试。

     

    你会发现过了好久还是没有反应,当然也可能是我等的时间不够久。

     

    我们来试试这个。

     

    上面用了一种最麻烦的方式,就是用wge先下载下来再安装。

    看到失败了,原因是依赖于ntfs-3g,但是这个没有装。我们可以用--nodeps来强行装上,这个选项就是不管三七二十一,先装上再说。

     

    不过你没有依赖是不可能用得了这个软件的,至少部分功能实现不了。所以说一般我们装软件还是用yum,自动解决依赖关系是真的方便,还记得安装scrapy库的时候被依赖支配的恐惧吗?需要指出的是上面先wget再rpm的话,wget下载的rpm包还在的。而rpm直接加url是不会

    有这个包的。

     

    rpm查询只能在本地的rpm数据库里面查,因为它没有repo,repo都是在yum.repo.d里面的。不过rpm查询的方式还是挺多的。

     

    query就是查询的意思。

     

     

     

     

     

    看到ntfs-3g-devel虽然在yum list installed里面有,但是在rpm -q却没有找到,这大概是在安装的时候没有考虑依赖,--nodeps导致的矛盾。

     

     

     

    从套件中查询什么意思呢?就是查的名字是软件的安装包,而不是软件的名字。

     

    当然这个rpm包首先得有才行。

     

    yum我们可以用provides来解决第二个问题。

    源码包管理

    我们下面就以nginx为例来安装,这个过程当然是我故意的,因为就是要说明解决问题的方法。我们先去下载源码包。这次我们要点进去download。

     

     

     

    选一个右边复制链接,当然是不能选windows的了。

     

    下载,解压(下面马上学到),然后切换路径进去。然后就要走下面的三步,首先要执行./configure。

     

     

     

    prefix是指定安装路径,with可以指定一些软件关联。我们先来看一下可能会出什么错误。

     

    首先出现的就是没有编译器错误。按照上面方法解决即可。它还可以指定user和group。

     

     

     

    我们再运行一次。

     

     

     

    我们其实是没有w这个用户的,但是它好像暂时还没有关注这个问题。先来简单了解一下pcre。

     

     

     

    如果你选择的with,关联里面出错的话,什么报错就yum -y install什么就对了。

     

    我们再运行一次。

     

    再来一次。发现已经ok了,已经生成了makefile了。不知道为什么user的问题还没有发现。

     

    下一步就是make,编译,make会按照makefile里面的设定调c/c++编译器去编译了,这一步可能时间会长一点。make完了以后就可以make install,也就是安装了。

     

    然后我们可以直接/home/lcl/sbin/nginx就可以启动nginx了。这个时候才报了没有w用户的错,没关系,我们建一个就行。

     

     

    我们先关闭防火墙。看一下我这个ip是多少,然后看看可以访问不能。

     

    我这个ip是变过的,因为重装过好几次,以前是192.168.139.128后来就变成了192.168.139.129了。这是把防火墙停了的效果。是403,应该是nginx的原因。

     

    开了防火墙直接是这种了。

     

    源码包安装过程还是比较复杂,但是也有好处啊,可以直接关联一些软件。

    文件查找

    首先要明白,我们前面学过的grep查找的并不是文件名,只是按照要求对文本的行进行过滤而已。它针对的并不是文件名。

     

    但是我们可以和tree结合起来实现查找文件的效果,不过这样看文件的绝对路径还是看不到。

    我们可以用下面要用的一个find搭配去找。这样可以实现查找文件,效果还是不错的。

     

    不过呢,linux里面还是有一些专门的查找文件的命令,其实上面的find就是,后面加一个grep其实是多此一举,因为find其实本身自己就有查找文件的功能,而且还很强大,下面就来学习文件查找的命令。

     

    第一个which我们不陌生了,它主要是用来查找命令或者说二进制文件的,它是有查找范围的,它的范围叫做PATH环境变量,以前讲在windows下python配置环境变量的时候就见到过PATH,它们的作用是一样的,就是放一些可以二进制的命令。echo $PATH可以打出来PATH里面的路径。

     

    linux默认的环境变量对于用户来说都是一样的,尽管普通用户的PATH里面有sbin,他如果不提权也运行不了sbin里面的命令,所以并没有什么问题。当然环境变量也是可以改的,不过我们就不在这里讲了,一百度就有,比如说https://www.cnblogs.com/qiuhong10/p/7815943.html。

    不推荐乱改,除非你确信地知道自己在干什么,这么干的后果是什么。

     

    首先看到别名是ok的,然后我们又建立一个脚本文件(虽然后面没有后缀),但是执行的时候linux还是会以shell脚本运行。我们没有把它加入/bin之前,需要一个绝对路径才可以运行,并且which是找不到的。用root的权限把它加进去,直接1就可以运行,并且which也可以找到了。

     

    最后最好把它删了。需要说明的一点是which可以找到又两个前提。

    1是文件在PATH里。2是它必须有x权限。

    能不能真正执行都无所谓,但是必须要有x权限。

     

     

     

     

     

    locate可以查找任意文件,不过说实话,这种方式有点麻烦。首先locate在centos里面还不是自带的需要yum -y install mlocate装一下。

     

    然后呢,locate查找的范围就是/var/lib/mlocate/mlocate.db这个数据库,这个数据库当然也是安上了mlocate才有的。

     

    locate命令和which一样不需要加路径,因为其实都有自己的查找范围嘛。但是locate查找的时候,你每进行一次文件操作,比如说创建一个文件或者删除一个文件(其实拷贝,剪切都可以看做是创建文件和删除文件这两个命令的组合),就必须手动更新一次数据库,updatedb,不然数据库里面的数据不会随着你的文件操作而改变。上面的例子很好的反应了这一点。当然数据库是可以设为自动更新的,一般是在下面那个文件里面,不过这也得你自己去设置。呵呵。

     

    自己不设置是没有的。但是自动更新显然周期就太长了,因为你是实时地在创建和删除文件啊,那么自动更新的周期就得很短,最起码得是0.1s这个数量级的吧。下面才是今天的主角find登场了,find功能非常强大。一般我们常用的格式是

    find [option] [path...] [expression] [action]。option是选项大家都很熟悉是怎么回事了,path就是查找的范围了,可以有多个,中间用空格隔开,expresion就是要查找的表达式,可以有很多种形式。action是要对查找的文件所作的动作。同时看到这些全部都有[],表示都是可选的,也就是说find就可以运行。

     

     

     

    那么tree和find的差别显而易见,find连隐藏文件都不放过,而tree就得加一个-a。

     

    find的第一种查找方式是按文件名查找。

     

    用通配符*和?的时候最好还是加上冒号,*的意思是可以代表任意个任意字符,?的意思是一个任意字符,和正则表达式里作为元字符的含义是不一样的。-iname是忽略大小写。

     

    文件大小呢,上图中的+5M是大于5M,5M就是正好5M的,-5M是小于5M的。

     

    不过find被我们前面用/dev/zero做的一个假的977T大小的文件给骗住了,233。这后面的-ls是一个action,这个action不是我们的ls命令,而是find的一个动作参数,它在这里的作用就等价于ll。指定文件的目录深度呢,需要注意的是从指定的路径分隔开,后面有n个/则深度为n+1,拿下面的例子来说就是/etc/fstab把需要遍历的目录/去掉,后面的etc/fstab有一个/,所以深度为2,所以-maxdepth 1是找不到的,而-maxdepth 2和3都可以找到,因为maxdepth指定的深度是小于等于后面的数字的。

     

    按照文件修改时间,atime是访问时间,mtime是文件内容修改的时间,而ctime是指文件的权限和属主,属组被修改的时间,一般我们对mtime更为关心。

     

    还可以按照文件的u和g来查找文件。里面的-a是指and的意思,也就是逻辑和,就是左右边的条件都得满足,可以不写,是默认的,而-o是or,是要写的。这里比较有意思的是nouser和nogroup。为什么会出现nouser和nogroup呢?

     

    是因为我们删除用户的时候遗留下来的,看到删除用户c2之后,/home/c2的属主和属组都变成了uid。然后个时候/home/c2以及里面的文件就都可以用nouser和nogroup作为帅选条件找到。不过有意思的是又创建了一个c3之后/home/c2的u和g都变成了c2,这是因为c3的uid是1006。

    我们再删除c3,发现/etc/group里面其实确实已经没有了1006了。

     

    再说一下比较有意思的事情,如何查找u不是lcl的文件呢?就用到了!这个符号是not,非的意思。

     

    太多了,所以们只看前20行,也许你会怀疑怎么还有/home/lcl里的文件呢?

     

    还可以按照文件类型去查看,参考上上上图。

     

    按照文件权限来查找文件有一个需要注意的地方,就是权限前加还是没加杠。

     

     

     

    也就是如果前面加了-表示的是只要包含这些权限的文件都算,可以多,但肯定不能少。而不加-就代表必须是775,多了的776,777都不行。不加-就认死理,而加-就比较通情达理了。当然,上面图里也算是复习了一下高级权限,权限用八进制表示其实是有四位的,后面三位我们比较熟,第一位是setuid,setgid和sticky,前面的高级权限里都有说到。setuid是4,setgid是2,sticky粘滞位是1。1000就是t---------,当然t的位置一般不在最前面。

     

    find后面的动作参数默认是-print也就是打印。-ls已经解释过,-delete是删除,-exec和-ok是相当于扩展动作的,后面跟的是命令。

     

    这里面可能你们对上图中划红线的地方比较疑惑,我们先来解释,{}代替的是前面find得到的内容,后面的\;可以认为是结尾的格式,都是必须有的,不然会报错。-ok和-exec的区别是会有提示,会有交互,但是我不知道-ok为什么没有成功,我去man了一下,找到了奇葩的原因

     

    。。。。。。。。。我们用-exec就是了。

    文件的压缩和解压

    windows里面的压缩解压我们很熟悉了。

     

    上面的例子我们看到用bandzip把毕业设计压缩成了一个毕业设计.zip。解压相信大家也很熟了,根本不需要再演示。那么我们先来看一下linux里面如何压缩。这里先补充一个知识,我们看目录中存放的文件总大小,可以用du -sh,可以用ll -h,但是结果却不太一样,下面的7.1和9.5差的还不是很大。

     

    但是看到35和1.2差的还是很大的。

     

    这是怎么导致的呢?参考了https://blog.csdn.net/mtawaken/article/details/8491413

    https://blog.csdn.net/ysdaniel/article/details/6922055

     

    那么我们应该看哪一个?一般来说还是应该看du -sh,当然sparse file肯定是不适用了。

    我们试着压缩一下/root里面的文件,使用gzip,-r是递归的意思。别gzip -r /etc啊,会很惨,不过后面gunzip -r /etc回来就可以了。

     

    看到结果是什么呢?看到为什么出来这么多个压缩包啊,这和windows不一样啊。这是因为其实windows里的压缩软件一般都会自动地做一步,叫做归档或者叫打包。

     

    打包很形象啊,就像什么呢?工厂生产出来的一盒一盒牛奶,装到一个箱子里面。打包之后的文件大小略大于被打包文件大小的总和,想想牛奶箱也能理解,打包是为了传输方便,想想也是,是一箱牛奶好拿呢,还是20盒散装的牛奶好拿呢?(虽然我们把文件打包传输的原因和这个不太一样)。压缩呢,就是让文件变得小一点,这个就拿喝完的牛奶盒为例吧,你可以把它踩得很扁,明显占用空间小了。当然或者比喻还是有点问题,因为文件里面是有内容的,但是总不能拿没喝过的牛奶去踩吧,233。在linux里面呢,打包的命令是tar。

     

    上面的demo我们就不演示了,主要是想说明虽然文件大小很小,但是数量很多的话,传输起来还是没有打包起来作为一个大文件传输的快,有兴趣的同学可以到https://www.bilibili.com/video/av18740388/?p=25&t=2970

    55分开始看一看。

     

     

     

    下面主要是说明tar的一些选项。

     

    -c就是打包的意思下面还有对应的解包,-t仅仅是列出包里面的内容,而没有其它操作。-x就是解包。-C是指定解压解包路径,至于打包压缩,tar的打包压缩文件的存储路径是当前目录,你可以cd到你想要的目录。-f是指定打包或者解包后的文件名。-j是把包压缩成bzip2格式或者解压bzip2的包,cj搭配就是压缩的,xj搭配就是解压,也就是说tar命令可以直接打包压缩或者解压解包一条龙服务。-J的格式是xz。

     

    -v还是和以前一样,会在屏幕上打印过程。-z的格式是zip。

     

    下面来举一个例子。

     

    cjf不能运行是因为bzip2没有装。装完以后就可以了。

     

    这些压缩的名字可以随便取,我这么取是因为人可以辨别出压缩文件的压缩格式,也比较规范。看到不同的压缩格式压缩率不一样,xz压缩的比较狠,但是压缩解压时间就会比较长了。

    一般gzip的11M和原来的35M比已经算是很小了。

     

    一般我们直接用最下面红字的那种就行,不指定g,j,J会自动判断。解压的文件都放在etc文件夹里(当然这么说是不对的,因为etc目录里存的这是文件的索引信息,文件是存在磁盘上的)。

     

     

     

     

     

    但是zip格式的没有办法解压,也很简单。yum -y install unzip就行。然后可以按照上面的命令解压了。

    打包压缩传输要比多个小文件传输速度要快得多,还能更快吗?答案是肯定的。我们来看案例3,蓝色的-(这个位置原来是名字)可以理解为内存,也就是不写进磁盘,我们都知道内存的读写速度要比磁盘快得多。

     

    我们来试一下。

     

    案例四给出了一种远距离传输的一种方法,用nc,这个nc需要我们yum -y install nc装一下。

    这种方式需要有某个端口,上面的8888是一个端口,如果这个端口没有打开,可以用常用的80端口,这种方式不需要输密码和解压(虽然有解压命令),速度比较快,这种方式需要先在接受的地方先设置监听,然后再传输数据,并且数据传输完毕,监听的进程也就结束了。

     

     

     

    有兴趣的可以去看 https://www.bilibili.com/video/av18740388/?p=25

    在第66分钟。

    展开全文
  • 压缩css和js是我们工作中... 好处就是:减少js体积,减少调用时间,提高网页执行效率,如果js过大就会导致加载慢,而导致页面一些效果不能正常快速执行。 (注意:这款软件需要jdk支持,就是需要安装jdk环境。)
  • 前言本文主要讲解如何在Linux系统上安装zip压缩与解压缩软件。zip是一个命令行实用工具,用于压缩文件和目录。压缩文件和目录能更有效地传输和保存它们。另一方面,unzip是一个实用工具,可以帮助您解压解压文件。...
  • ##数据库的好处1.持久化数据到本地2.可以实现结构化查询,方便管理##数据库相关概念1、DB:数据库,保存一组有组织的数据的容器2、DBMS:数据库管理系统,又称为数据库软件(产品),用于管理DB中的数据3、SQL:结构化...
  • 的好处不用多说——界面大小绝对优化。或许您在想,他们这样做大大降低了可读性。的确,我们看是很乱,只能借用第三方软件重新布局代码。但是,我想他们开发时使用的源码不可能是混一团,前不久发现一个页面基类,...
  • 前言本文主要讲解如何在Linux系统上安装zip压缩与解压缩软件。zip是一个命令行实用工具,用于压缩文件和目录。压缩文件和目录能更有效地传输和保存它们。另一方面,unzip是一个实用工具,可以帮助您解压解压文件。...
  • 前言本文主要讲解如何在Linux系统上安装zip压缩与解压缩软件。zip是一个命令行实用工具,用于压缩文件和目录。压缩文件和目录能更有效地传输和保存它们。另一方面,unzip是一个实用工具,可以帮助您解压解压文件。...
  • 7-zip_920 压缩

    2013-03-16 18:17:47
    7-Zip 软件基于 GNU 次要公共许可协议(Lesser General Public License) 之下发布,是一款完全免费的压缩解压软件。...这样做的好处之一就是整个软件的程序只有一个文件,适合在U盘中随身携带,易于操作。
  • 完全免费而且开源的压缩软件,相比其他软件有更高的压缩比但同时耗费的资源也相对更多。支持压缩/ 解压缩:7z, XZ, BZIP2, GZIP, TAR, ZIP,WIM (3)7z的好处: 节省磁盘的空间,节省上传下载的流量 (4...
  • OpenBLT开源主要好处是您可以自定义和调整Bootloader以满足您特定需求。 OpenBLT可以移植到任何8位,16位或32位微控制器,并且当前可以在ST STM32,Infineon XMC,NXP S12以及TI TM4C和LM3S微控制器上运行。 ...
  • 在上一篇文章黑客流谈到了关于网页打开速度对SEO的影响,其中提到了网页开启Gzip压缩的好处,接下来我来和大家分享一下WINDOWS系统IIS服务器下如何开启Gzip压缩。 首先我们来了解一下什么是Gzip,Gzip是GNU zip的...
  • 可牛免费杀毒,最好用的杀毒软件,100%免费,使用的卡巴的引擎,还有“专杀工具”,专杀工具里面有针对各种疑难问题的专业工具。在最近的VB100测试中,可牛免费杀毒是唯一一家...用国内外结合的好处就是比较了解国情。
  • Clipchamp独特好处包括: - 在你电脑而非网上处理视频,保护你隐私 - HTML5录像机,无需使用Flash。 - 让你可以使用摄像头以360p、480p和720p解析度录像。视频最长时长是5分钟 - 可靠MP4转换器,也...
  • RAR和ZIP:压缩大战真相

    千次阅读 2009-08-28 16:25:00
    计算机技术的开放最大的好处就是在该行业不会再产生垄断,这是为全人类造福的好事,因为这带来自由。ZIP是开放的,RAR不是。 RAR确实比ZIP压缩率高。但是时代进步了,压缩率已经不重要了。现在宽带、大容量硬盘、大...
  • 网站开启 Gzip 压缩的好处相信很多人都已经清楚,这样做可以提高网站的性能。那么为什么很多网站没有开启 Gzip 压缩功能呢?原因有4点:防病毒软件、浏览器 bug、网站代理和服务器未配置。 使用 IE6 时不会发送 ...
  • 人力成本将会不断提升,自然会压缩外包项目生存空间。而且在经历过金融危机人都会有感觉,金融危机对外包项目冲击还是相当大,相信在大连人都会有此感触吧。但是,任何事物存在都是有道理,相信2000年...
  • 数据压缩技术之一,就是通过消除冗余来释放存储容量,提高计算速度,或是带来其他好处。但是,在目前计算机系统中,访问主存成本很大。因此,在存储器中使用数据压缩技术有助于减少提取数据频率和数量,提高...
  • ubuntu自己编译卸载软件

    千次阅读 2011-04-06 10:33:00
    软件的好处是易于管理,方便更新,而且一般不会有很多的兼容性问题。但是问题是官方的软件源一般更新很慢,而且很多的软件根本就从来没有进入过官方的源 里面,这种情况下就需要自己下载源代码编译了。 其实自己...
  • 应该说,dvb节目是有严格的压缩标准,因此它格式也是固定,但基于图像和声音格式是多种多样,因此也就有了众多音频和视频格式,了解这些信息对于我们来说是非常有好处的,因为这也是决定节目质量好坏...
  • Linux软件管理基础

    2015-05-11 16:33:22
    开源软件大多以源代码形式发布,一般打包成tar.gz归档压缩文件 ./configure 检查编译环境、相关文件以及配置参数并生成makefile make 对源代码进行编译,生成可执行文件 make install 安装 源代码形式很...
  • PC软件加密方案

    2018-09-04 11:54:41
    这样做的好处是,通过常规破解手段,无法轻易找到可执行程序的真正入口点(OEP),可有效防止破解源程序,保护重要信息数据。壳加密又分为伪装壳、压缩壳等多种类型,虽然加壳方法的实现细节有所不同,但其核心加密...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 179
精华内容 71
关键字:

压缩软件的好处