【压缩扩展名】
在 Linux 环境中,支持的压缩命令很多,且不同命令所采用的压缩技术不同,彼此之间可能就无法相互压缩/解压缩文件
常见的压缩文件扩展名如下表:
扩展名 | 文件 |
---|---|
*.Z | compress 程序压缩的文件,目前已弃用 |
*.gz | gzip 程序压缩的文件 |
*.bz2 | bzip2 程序压缩的文件 |
*.tar | tar 程序打包的数据,未压缩 |
*.tar.gz | tar 程序打包的数据,经过 gzip 压缩 |
*.tar.bz2 | tar 程序打包的数据,经过 bzip2 压缩 |
【gzip 与 zcat】
gzip
命令是目前最常用的压缩命令,可以解开 compress、zip、gzip 等软件所压缩的文件,命令格式为:gzip [选项] 文件名
常用选项有:
- -c:将压缩的数据输出到屏幕上,可通过数据流重定向处理
- -d:解压缩
- -t:检验压缩文件的一致性
- -v:显示原文件/压缩文件的压缩比等信息
- -#:压缩等级,-1 最快,但压缩比最差,-9 最慢,但压缩比最好,默认为 -6
当使用 gzip
压缩时,默认状态下原本的文件会被压缩为后缀为 .gz
的文件
cat
命令可以读取纯文本文件,而 zcat
命令可以读取纯文本被压缩后的压缩文件
【bzip2 与 bzcat】
gzip
是为了替代 compress
并提供更好的压缩比而创造的,bzip2
则是为了取代 gzip
而创造的,命令格式为:bzip2 [选项] 文件名
常用的选项有:
- -c:将压缩过程中产生的数据输出到屏幕上
- -d:解压缩
- -k:保留原文件,不删除原始的数据文件
- -z:压缩
- -v:显示原文件/压缩文件的压缩比等信息
- -#:压缩等级,-1 最快,但压缩比最差,-9 最慢,但压缩比最好,默认为 -6
与 gzip
命令和 zcat
命令一样,使用 bzcat
可以读取纯文本被 bzip2
压缩后的压缩文件
【tar 命令】
文件打包
使用 gzip
或 zip2
只能对单个文件进行压缩,若是对目录进行操作,这两个命令会将目录内的所有文件分别进行压缩
若想将多个文件或目录压缩成一个文件,需要先使用 tar
命令进行打包,打包后再使用 gzip
或 bzip2
进行压缩
打包与压缩
命令格式:tar [-z|-j] [cv] [-f 新建文件名] 要压缩的文件名或目录名 [--exclude=FILE]
- -z:采用 gzip 进行压缩,此时新建文件名最好为
*.tar.gz
形式 - -j:采用 bzip2 进行压缩,此时新建文件名最好为
*.tar.bz2
形式 - -c:新建打包文件
- -v:在压缩/解压缩过程中,将正在处理的文件名显示出来
- —exclude=FILE:在打包某目录时,排除该目录中的 FILE 所指示的文件
一般来说,最简单的使用 tar
进行打包压缩的命令是:tar -jcv -f 新建文件名 要压缩的文件名或目录名
查看文件
要想查看使用 tar
打包并压缩后的文件中包含哪些文件,可以使用命令:tar [-z|-j] [tv] [-f 要查看的文件名]
- -z:采用 gzip 进行压缩,此时新建文件名最好为
*.tar.gz
形式 - -j:采用 bzip2 进行压缩,此时新建文件名最好为
*.tar.bz2
形式 - -t:查看打包文件的内容所包含的文件名
- -v:在压缩/解压缩过程中,将正在处理的文件名显示出来
一般来说,最简单的使用 tar
进行查看文件的命令是:tar -jtv -f 要查看的文件名
解压缩
命令格式:tar [-z|-j] [xv] [-f 要解压文件名] [-C 目录]
- -z:采用 gzip 进行压缩,此时新建文件名最好为
*.tar.gz
形式 - -j:采用 bzip2 进行压缩,此时新建文件名最好为
*.tar.bz2
形式 - -x:解包或解压缩,可搭配 -C 在特定目录展开
- -v:在压缩/解压缩过程中,将正在处理的文件名显示出来
一般来说,最简单的使用 tar
进行解压缩文件的命令是:tar -jxv -f 要解压文件名 —C 要解压的目录