打包,也称为归档,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没有经过压缩,因此,它占用的空间是其中所有文件和目录的总和。通常,归档总是会和系统备份联系在一起。
压缩
压缩是指利用算法将文件进行处理,已达到保留最大文件信息,而让文件体积变小的目的。其基本原理为,通过查找文件内的重复字节,建立一弯芦个相同字节的词典文件,并用一个代码表示。
压缩和归档文件类似,压缩文件也是一个文件和目录的集合,且这个集合也被存储在一野山个文件中,但它们的不同之处在于,压缩文件采用了不同的存储方式,使其所占用的磁盘空间比集合中所有文件大小的总和要小。
由于计算机处理的信息是以二进制的形式表示的,因此,压缩软件就是把二进制信息中相同的字符串以特殊字符标记,只要通过合理的数学计算,文件的体积就能够被大大压缩。把一个或者多个文件用压缩软件进行压缩,形成一个文件压缩包,既可以节省存储空间,又方便在网络上传送。
对文件进行埋脊带压缩,很可能损坏文件中的内容,因此,压缩又可以分为有损压缩和无损压缩。
打包和压缩的区别
打包指的是将多个文件和目录集中存储在一个文件中,而压缩则指的是利用算法对文件进行处理,从而达到缩减占用磁盘空间的目的。
Linux下,常用打包命令有2个,分别是tar和dd常用的压缩命令有很多,比如gzip、zip、bzip2等。
tar命令用于对文件打包压缩或解压:$ tar [选项] [文件]
以下是tar命令的常用参烂丛数:
tar是个打包的命令,它的作用是将一堆的文件或目录归档成一个.tar结尾的文件。生成tar包后,就可以用其他的压缩程序来对tar包进行压缩。
我们在上面看到的 -z 参数就是对tar包用Gzip程序进行饥配樱了压缩,最后才生成了 .tar.gz 结尾的压卖核缩包。如果不用 -z 参数而使用 -j 参数,也就是用bzip2程序压缩tar包,最后就会生成 .tar.bz2 结尾的压缩包。
使用tar命令打包压缩的一个好处是,它会保留原始文件的权限和属性。
我们经常会在windows系统上使用 .zip 格式的压缩文件,在linux中也可以将文件和目录压缩成zip格式,或者解压zip格式的压缩包。
但是zip的缺点是不能保留文件的权限和属性,解压后需要我们自己用chmod重新设置文件的权限。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)