上节我们学习了tar命令打包和查看tar文件中的内容,这节我们继续熟悉tar解包以及其他操作。

上节我们把桌面上的linux文件夹里面的东西打了一个包,打包后的文件也在桌面上,叫tar_linux.tar。


●tar解包

现在我们把tar_linux.tar这个打包文件进行解包操作,使用命令:

tar -xf tar_linux.tar。

说明:

关于tar命令,可以看看我上一节对tar命令知识的小总结。

tar命令的语法是:

tar [主选项+辅选项] 文件或目录

到底是要打包还是要解包还是压缩,是由选项决定的。

在tar -xf tar_linux.tar这个命令里,选项x就是extract的第二个字母,extract是提取的意思,选项f就是file,

所以tar -xf tar_linux.tar就是把tar_linux.tar这个包中的文件提取出来(就是解包)。

我们输入命令,回车,如下图:


但是回车后,如上图,发现没有什么变化,这是怎么回事呢?

这是因为我们是把linux这个文件里面的所有文件,打成了一个包文件tar_linux.tar,所以我们对tar_linux.tar进行解包,解包后提取出来的文件就是跟linux文件夹中的文件一模一样,而桌面上已经有linux这个文件夹,所以我们看不出来变化。

现在我们把桌面上这个linux文件夹删除掉,然后再进行一次对tar_linux.tar的解包,如下图:


我们看到,先把桌面上已经存在的linux文件夹删除之后,再对tar_linux.tar进行解包,桌面上又会出现linux文件夹,这个linux文件夹其实就是tar_linux.tar解包后的文件。

我们说打包和压缩是两个概念,打包相当于只是把一堆文件整理一下,打成一个包裹,而压缩相当于对打好的包裹再压缩一下。

●tar压缩

现在我们学习压缩的命令。

压缩有一种方式是gzip,gzip就相当于用于压缩文件的程序。

由于linux系统中的大多压缩程序只能对一个文件进行压缩,所以想要压缩一堆文件,就必须先进行打包,把他们打包成一个tar类型的文件包裹,然后再对这个tar文件进行压缩。所以不管打包、解包、压缩、解压的命令都是以tar开头的,而到底是打包、解包、压缩、还是解压?是由tar命令的选项决定的。

我们现在对桌面上的linux这个文件夹所有文件进行压缩,使用命令:

tar -czf linux_compressed.gz linux/

说明:

在这个命令中,选项c就是create的首字母,就是创建的意思,f就是file,z就是用gzip这种方式压缩,所以czf就是把一堆文件创建成gzip形式的压缩文件。

linux_compressed.gz--linux_compressed是创建的压缩文件名,gz就是创建的压缩文件的后缀,是gzip的简写。

linux/就是咱们要进行压缩的那一堆文件。

操作如下图:


如上图,我们看到使用该命令对linux文件夹进行压缩之后,桌面上就多了一个后缀为.gz的红色的压缩文件linux_compressed.gz。