zip与tar linux?linux解压tar.gz
大家好,今天小编来为大家解答以下的问题,关于zip与tar linux,linux解压tar.gz这个很多人还不知道,现在让我们一起来看看吧!
Linux常见压缩格式Tar、Zip和Gz格式之不同
Tar、Zip和 Gz之间的不同用最为简洁的描述来说可归纳为:
与 Unix和类 Unix系统一样,故事开始于很久之前的七十年代。1979年 1月的一个清晨,Tar实用程序首次作为 Unix V7的一部分正式面世。Tar程序当时主要被设计为往磁带上批量高效写入文件的一种方式。现在,虽然现在大多数 Linux用户都已经不知道磁带驱动器是什么鬼了,但 tarballs(tar的昵称)仍被常用于将多个文件甚至整个目录树打包到单一文件当中。
需要 Linux/Unix用户注意的是,普通的 tar格式文档只进行归档操作而不进行压缩。换句话说就是,如果你 tar 100个 50kb的文件得到的 tar归档文件大小应该为 5000kb左右。
使用 Tar进行文件归档的唯一好处就是减少某种粒度磁盘空间的分配。(例如在簇大小为 4kb的磁盘上 1字节的文件也要占用 4kb磁盘空间,若有 1000个 1字节的文件分散在此磁盘上的话,则会占用 4MB大小,而使用 Tar归档之后则只占用 1MB左右大小。)
值得一提的是,tar并非 Linux/Unix中创建归档文件的唯一方式。程序员朋友应该知道 ar,它大多情况下主要用于创建静态库,实际它也是可用来创建其它种类归档的,例如 Debian系统中使用的.deb包文件就是 ar存档。而 macOS的 mpkg包是使用 gzip压缩的 cpio档。不过 ar和 cpio用起来不像 Tar这样友好、简单,所以 tar的受欢迎程度更高,普及更广。
虽然归档是种不错的选择,但随着时间的推移和个人 PC时代的到来,人们意识到可通过压缩数据的方式来大量节省存储成本。所以 10年后随 MS-DOS出现的 zip文档便是支持压缩的归档格式,zip最常见的压缩方式是采用 LZ77算法实现的 deflate。由于它由 PKWARE商业开发,所以 zip格式也受专利保护多年。因此,为不侵犯到 PKWARE的专利,同样采用 LZ77算法的 gzip格式被推出并广泛使用。
Unix的哲学就是把某事做到最好,所以 gzip只被设计为压缩文件。因此,为了创建压缩归档,必需先使用 tar创建归档,之后再对归档文件进行压缩,因此才有了.tar.gz文件(为遵循 8.3 MS-DOS文件名称限制,又被简称为.tgz)。
随着技术的不断发展,具有更高压缩比的压缩算法也一一被实现,例如:在 bzip2中实现的 Burrows-Wheeler算法(.tar.bz2存档)和 LZMA算法实现的.xz存档。
现在,用户已经可以在 Linux和 Windows中自由使用任何归档文件格式。由于 zip格式已经被 Windows操作系统原生支持,因此这种格式特别适合跨平台环境。
文件压缩中的“Zip”、“ 7z”、TAR”格式各有什么区别
zip是一种规范开放的压缩文件,算法不定,但主要是用 DEFLATE;\x0d\x0a7zip和zip差不多,算法不定,主要用bzip2和lzma,而且完全开源;\x0d\x0a(zip和7z更像是压缩容器,因为算法不是格式固定,允许支持其他压缩算法)\x0d\x0atar是Linux常见的一种归档文件(原生不包括压缩功能);\x0d\x0a\x0d\x0a大小与区别\x0d\x0atar是无压缩的,比压缩效率,其次zip,接着7z。\x0d\x0a\x0d\x0a优缺点\x0d\x0a在Linux里面,tar一般和其他没有文件管理的压缩算法文件结合使用,用tar打包整个文件目录结构成一个文件,再用gz,bzip等压缩算法压缩成一次。也是Linux常见的压缩归档的处理方法。\x0d\x0a\x0d\x0azip相对比较老,格式规范可知,所以积累了各种加解压实现,有较好的兼容性,不过现有文件格式相对而言比较落后,还有会有文件名乱码问题(因为文件名是用非Unicode编码)\x0d\x0a\x0d\x0a7z就新些,所用算法压缩效率也好很多,兼容性不及zip,7z的文件和管理程序都是开源的,文件格式也比较好(支持Unicode文件名),两个主要压缩算法的性能都很好,只是差何时能普及而取代zip而已。\x0d\x0a\x0d\x0a最后,国内很多压缩软件都是支持这些算法的,2345好压、360压缩。
探秘Linux压缩与解压命令:Tar与Zip
大家好,今天我们要深入了解Linux系统中的两个常用命令——Tar和Zip。在Linux环境中,文件压缩是一项至关重要的技能,它能有效节省磁盘空间,并简化文件传输与备份过程。接下来,我们一起看看这两个强大工具的工作原理。
首先,我们来看看Tar命令的选项含义。
例如,解压压缩文件node-v14.15.1-linux-x64.tar.xz的命令如下:
tar
然后,我们来看看Zip命令的语法。
接着,我们再来了解一下Zip命令的选项含义。
总结来说,无论是Tar还是Zip,它们在Linux系统中都是极为实用的文件压缩与解压工具。Tar适用于归档文件和目录,而Zip则更适合对文件内容进行压缩。当与Gzip或Bzip2等压缩工具配合使用时,它们的性能将得到进一步提升。
掌握这些命令,您将在Linux系统中处理文件变得更加便捷高效。希望本文对您有所帮助,感谢阅读!