天天看点

Linux下gzip、bzip、zip、tar压缩命令的使用详解

##本文所有测试均在centos6.5系统环境下完成,其他版本的查看已压缩文件内容的命令可能稍微有些区别。

##注意:

  • gzip、bzip2只压缩文件 
  • zip、tar压缩目录下所有内容,属于归档文件,相当于windows下常见压缩文件夹
  • gzip/bzip2/zip -[1-9] 文件名,数字指出压缩率,数字越大,压缩后文件越小
  • 所有的解压都会将压缩文件解压到与被解压文件的同一目录下

1.gzip命令

  • 压缩文件:[gzip 文件名]  => 文件名.gz的压缩文件
  • 查看压缩文件:[gzcat/zcat .gz结尾的压缩文件]
  • 解压缩文件:[gunzip .gz结尾的压缩文件] => 不带.gz的同名文件
Linux下gzip、bzip、zip、tar压缩命令的使用详解

 2.bzip2命令

用法与同文件替换情况同gzip,就是bzip2压缩后文件更小,占用cpu和好费时间更久

  • 压缩文件:[bzip2 文件名]  => 文件名.bz2的压缩文件
  • 查看压缩文件:[bzcat .bz2结尾的压缩文件]
  • 解压缩文件:[bunzip2 .bz2结尾的压缩文件 => 不带.bz2的同名文件
Linux下gzip、bzip、zip、tar压缩命令的使用详解

3.zip命令

  • 压缩归档目录:[zip -q -r 压缩后文件名.zip 要压缩的目录] => 你自定义的压缩后文件名.zip后缀的压缩文件

-q:不显示指令执行过程

 -r:递归处理,将指定目录下的所有文件和子目录一并处理​​​​​

Linux下gzip、bzip、zip、tar压缩命令的使用详解

如上图所示,这个时候就是把/root目录下的所有文件都压缩到all.zip中 ,及ls /root指令所呈现的所有文件都压缩至all.zip中

  • 压缩归档目录:[zip -q -r 压缩后文件名.zip *]

*:你所在文件夹目录下的所有文件(你想压缩./all这个目录,就cd all,然后再执行此命令)

如下图所示,则另外一种则是压缩当前你所在目录的所有文件到all.zip中,及ls ./指令所呈现的所有文件都压缩至all2.zip中。

Linux下gzip、bzip、zip、tar压缩命令的使用详解
  • 解压缩文档目录:[unzip -d 解压到的目录 压缩文件.zip]

4.tar命令 

  • 压缩归档目录:[tar -cvf 压缩后文件名.tar] => 你自定义的压缩后文件名.tar后缀的压缩文件

-c:创建新的tar归档文件

-v:在处理文件时显示文件(可带可不带的参数,想看处理了哪些文件就带上)

-f:输出结果到文件或者设备文件

Linux下gzip、bzip、zip、tar压缩命令的使用详解
  • 查看压缩归档的目录:[tar -tf 压缩后文件名.tar]

-t:列出有的tar归档文件的内容

Linux下gzip、bzip、zip、tar压缩命令的使用详解
  • 解压缩归档:[tar -xvf 要解压的归档文件名.tar]

-x:从已有tar归档文件中提取文件

-v:在处理文件时显示文件(可带可不带的参数,想看处理了哪些文件就带上)

-f:输出结果到文件或者设备文件

Linux下gzip、bzip、zip、tar压缩命令的使用详解

5.拓展

  • .tgz  /  .tar.gz后缀名结尾的文件(常见)

该文件是目录(文件夹)经过tar压缩后再用gzip压缩后得到

①先用gzip解压,再用tar解压,这样比较麻烦

②直接用命令[tar -zxvf 文件名.tgz]  /  [tar -zxvf 文件名.tar.gz]

Linux下gzip、bzip、zip、tar压缩命令的使用详解

继续阅读