zip、gzip、bzip2、tar有何联系? 这篇文章围绕 Linux 常见归档与压缩命令,梳理了 zip/unzip、gzip/gunzip、bzip2/bunzip2、tar 的能力边界与组合方式。能力分类文章先区分“打包/拆包”和“压缩/解压缩”两个维度。强调 tar 偏归档、gzip/bzip2 偏压缩、zip 常把两者合并。这一分类有助于理解为什么目录压…
归类 img 我们把这几个命令归类为几种能力,一个是解压缩能力一个是打拆包能力。 我这里打包的意思是不使用压缩算法对文件进行压缩,只是简单的把多个文件归档为一个文件。而拆包则是它的逆过程。 压缩则是大家熟知的将文件以某种压缩算法对内容进行缩减,解压则是它的逆过程。zip与unzip命令 zip命令用于将文件压缩为 .zip 格式的文件,之所以将他定义为可打包拆包是因为他可以支持多文件的压缩,而其他的 gzip 和 bzip2 只能对单文件进行压缩,也就是说如果要压缩多文件,需要先经过打包过程变成单文件再压缩,.zip 格式的文件默认将打包和压缩放在一起了,而 zip 命令也不支持单独的打包再压缩。tar命令 不加入 -z 或 -j 参数,加入 -c 表示对文件或目录进行归档。 所以tar命令是支持单独的归档功能的,具体的压缩算法可以通过参数指定可以是 gzip 也可以是 bzip2 或其他。使用方式zip 命令格式zip [-r] [压缩后文件名] [文件或目录] 命令描述zip命令用来对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。 选项-r: 递归处理,将指定目录下的所有文件和子目录一并处理,用于压缩目录-x:压缩时排除符合条件的文件ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ zip a.zip a.txt #压缩文件 adding: a.txt (stored 0%) ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls abc a.txt a.zip ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ touch abc/tmp.txt ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ zip -r abc.zip abc/ -x abc/tmp.txt #压缩文件夹并忽略某些文件 adding: abc/ (stored 0%) unzip 命令格式unzip [选项] 文件名 命令描述 unzip命令用于解压缩由zip命令压缩的“.zip”压缩包。 选项-n:解压缩时不要覆盖原有的文件;-o:不必先询问用户,unzip执行后覆盖原有的文件;-d <目录>:指定文件解压缩后所要存储的目录(不指定目录,默认解压到当前目录)可配合tar命令对 tar.gz 文件进行解压缩和拆包 tar -zxvf 文件名 示例ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ unzip abc.zip -d ~ #解压到指定目录 Archive: abc.zip creating: /home/ljb/abc/ gzip 命令格式gzip [文件] 命令描述 经 gzip 压缩过后,其名称后面会多处 .gz 扩展名。 注意:gzip 只能压缩文件,不能压缩文件夹,压缩后原文件会被删除。 gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip压缩常常用在http的网络请求中。 示例ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ touch b.txt ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls abc abc.zip a.txt a.zip b.txt ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ gzip b.txt #压缩后生产b.txt.gz,原本的文件不见了 ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls abc abc.zip a.txt a.zip b.txt.gz gunzip 命令格式gunzip [文件] 命令描述 gunzip命令用来解压缩 xxx.gz 文件。 示例ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls abc abc.zip a.txt a.zip b.txt.gz ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ gunzip b.txt.gz ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls #解压缩成功,得到b.txt文件 abc abc.zip a.txt a.zip b.txt bzip2 命令格式bzip2 [选项] [文件] 命令描述bzip2命令用于压缩 .bz2 格式的压缩包,是gzip的升级版本,可以保留原文件。bzip2的压缩比比较高,可用于…
本应用需要启用 JavaScript。
正在初始化 WebAssembly 引擎…
首次编译原生模块可能需要数秒
就绪后,页面交互将以接近原生的速度运行