市面上有非常多的压缩格式:
- zip:Linux、WIndows、MacOS 常用
- 7zip:Windows 系统常用
- rar:Windows 系统常用
- tar:Linux、MacOS 系统常用
- gzip:Linux、MacOS 系统常用
在 WIndows 系统中,我们经常用的软件例如:winrar、bandizip 等软件,都支持常见的压缩格式,那么在 Linux 中如何进行文件的压缩、解压呢?
在 Linux、MacOS 系统中常用的 2 种压缩格式分别是:
- .tar,称之为 tarball 归档文档,即简单的将文件组装到一个 .tar 的文件内,并没有太多文件体积的减少,仅仅是简单的封装。
- .zip,也常见为 .tar.gz、gzip 格式压缩文件,即使用 gzip 压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积。
压缩为 tar 格式
语法如下:
tar [-c -v -x -f -z -C] 参数1 参数2 参数N
选项
- -z,表示 gzip 模式,不使用 -z 就是普通的 tarball 格式
- -c,表示创建压缩文件,用于压缩模式
- -v,表示显示压缩、解压的过程,用于查看进度
- -x,解压模式(和 -c 互斥)
- -C,表示选择解压的目的地,用于解压模式
-f,要创建的文件、或要解压的文件,-f 选项必须要在所有选项中处于最后一个 :::warning ⚠️ 注意
-z 选项如果使用的话,一般处于选项位的第一个
- -f 选项必须放在选项位的最后 :::
压缩常用组合:
例如压缩文件:
解压常用组合:
例如解压:
压缩为 zip 格式
另外还可以通过 zip 命令压缩文件为 zip 的压缩包,语法如下:
zip [-r] 参数1 参数2 参数n
选项
- -r,被压缩的包含文件夹的时候,需要使用 -r 进行递归处理,和 rm、cp 中的 -r 是一样的样式
例如压缩:
使用 uzip 命令进行解压,语法如下:
unzip [-d] 参数
选项
- -d,表示解压去的位置,同 tar 的 -C 选项
参数
- 参数,表示被解压的 zip 压缩包文件
例如解压: