Linux教程

Linux中的 打包、解压缩 命令总结

本文主要是介绍Linux中的 打包、解压缩 命令总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

.zip格式的文件在Windows和Linux下都能使用;

Linux中,有:.tar、.gz、.bz2、.zip等格式:

  • .gz:由gzip压缩工具压缩的文件。
  • .bz2:由bzip2压缩工具压缩的文件。
  • .tar:由tar打包程序打包的文件(tar并没有压缩功能,只是把一个目录合并成一个文件)。
  • .tar.gz:先由tar打包,然后再由gzip压缩。
  • .tar.bz2:先由tar打包,然后再由bzip2压缩。
  • .tar.xz:先由tar打包,然后再xz压缩。

 

gzip

cd ~
touch 1.txt
gzip 1.txt       压缩
gzip -d 1.txt.gz   解压,加入 -d 即可

注意:gzip 不支持压缩 目录

 

bzip2

cd ~
touch 1.txt
bzip2  1.txt        压缩,或者加入 -z 参数表示压缩,默认可以不写
bzip2 -d 1.txt.bz2       解压

注意:bzip2 不支持压缩 目录

 

xz

cd ~
touch 1.txt
xz 1.txt        压缩,或者加入 -z 参数表示压缩,默认可以不写
xz -d 1.txt.xz       解压

注意:xz 不支持压缩 目录

 

tar 打包工具

把文件和目录打包成一个文件,方便复制或者移动。

格式为 tar [-zjxcvfpP] filename tar

  • -z:表示同时用gzip压缩。
  • -j:表示同时用bzip2压缩。
  • -J:表示同时用xz压缩。
  • -x:表示解包或者解压缩。
  • -t:表示查看tar包里的文件。
  • -c:表示建立一个tar包或者压缩文件包。
  • -v:表示可视化。
  • -f:后面跟文件名(即-f filename,表示压缩后的文件名为filename,或者解压文件filename。)需要注意的是,在多个参数组合的情况下,请把-f参数写到最后面。
  • -p:表示使用原文件的属性,即压缩前文件是什么属性压缩后就还什么属性。(不常用)
  • -P:表示可以使用绝对路径。(不常用)
  • --exclude filename:表示在打包或压缩时,不要将filename文件包括在内。(不常用)
cd ~
touch 1.txt 2.txt 3.txt 4.txt
yum install tree -y            // 安装tree命令,用来查看目录树形结构
tree .
tar -cvf test111.tar test111
ls

不管是打包还是解包,是不会删除原来的文件的

查看压缩包内的内容:

tar -tf test111.tar

 

打包的同时使用压缩
同时操作支持:gzip压缩、bzip2压缩和xz压缩

-z 可以压缩成 gzip 格式的文件

tar -zcvf test111.tar.gz test111   打包压缩 test111目录
tar -zxvf test111.tar.gz      解包解压缩 test111.tar.gz

 

-j 可以压缩成 bzip2 格式的文件

tar -jcvf test111.tar.bz2 test111   打包压缩 test111目录
tar -jxvf test111.tar.bz2      解包解压缩 test111.tar.bz2

 

xz 同理,这里不多做介绍了...

 

Zip 压缩

zip格式的压缩包在Windows和Linux中都比较常用,它可以压缩目录和文件。

如果你的Linux没有zip命令,你可能需要先安装它:

yum install -y zip
yum install -y unzip

压缩 文件 和 目录:

zip  1.txt.zip  1.txt        将 1.txt 压缩成 1.txt.zip
zip test111.zip test111/*   将 test111目录下的所有内容压缩成 test111.zip

zip后面先跟目标文件名,即压缩后的自定义压缩包名,然后跟要压缩的文件或者目录。

思考:在压缩目录时,如果只写目录名(比如 zip 1.zip folder/ ),会发生什么?若目录下还有二级目录甚至更多级目录时,能否也一并压缩二级目录下的文件呢?

答:即使 folder 里面有文件和N级目录,也不会打包这些,而是打包这个 folder 本身(不包括里面的文件和目录);

如果想要一并压缩二级目录下的文件,必须加上-r选项:

zip -r 1.zip folder/

等同于:

zip 1.zip folder/*

zip的解压

unzip 1.zip

 

zcat 和 bzcat 查看压缩包内的内容

上面介绍了使用-t选项可以查看tar压缩包的文件列表。对于gzip2或者bzip2压缩格式,可以用:

zcat 11.gz
bzcat 22.bz2

来查看压缩包里面的内容;

这篇关于Linux中的 打包、解压缩 命令总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!