linux tar 是压缩还是解压

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux tar 是压缩还是解压相关的知识,希望对你有一定的参考价值。

  tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。

首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。

为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。

linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩。

1、命令格式:tar[必要参数][选择参数][文件]
2、命令功能:用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的
3、命令参数
1) 必要参数有如下:
-A 新增压缩文件到已存在的压缩
-B 设置区块大小
-c 建立新的压缩文件
-d 记录文件的差别
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip解压文件
-j 支持bzip2解压文件
-Z 支持compress解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-W 确认压缩文件的正确性

2)可选参数如下:
-b 设置区块数目
-C 切换到指定目录
-f 指定压缩文件
--help 显示帮助信息
--version 显示版本信息

4.常见解压/压缩命令
tar 文件
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName

.tar.gz 和 .tgz 文件
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
参考技术A 是个打包命令,可以解压缩

[dmtsai@study ~]$ tar [-z|-j|-J] [cv] [-f 待建立的新档名] filename... <==打包与压缩
[dmtsai@study ~]$ tar [-z|-j|-J] [tv] [-f 既有的 tar档名] <==察看档名
[dmtsai@study ~]$ tar [-z|-j|-J] [xv] [-f 既有的 tar档名] [-C 目录] <==解压缩
选项与参数:
-c :建立打包档案,可搭配 -v 来察看过程中被打包的档名(filename)
-t :察看打包档案的内容含有哪些档名,重点在察看『档名』就是了;
-x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开
特别留意的是, -c, -t, -x 不可同时出现在一串指令列中。
-z :透过 gzip 的支援进行压缩/解压缩:此时档名最好为 *.tar.gz
-j :透过 bzip2 的支援进行压缩/解压缩:此时档名最好为 *.tar.bz2
-J :透过 xz 的支援进行压缩/解压缩:此时档名最好为 *.tar.xz
特别留意, -z, -j, -J 不可以同时出现在一串指令列中
-v :在压缩/解压缩的过程中,将正在处理的档名显示出来!
-f filename:-f 後面要立刻接要被处理的档名!建议 -f 单独写一个选项罗!(比较不会忘记)
-C 目录 :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。

其他後续练习会使用到的选项介绍:
-p(小写) :保留备份资料的原本权限与属性,常用於备份(-c)重要的设定档
-P(大写) :保留绝对路径,亦即允许备份资料中含有根目录存在之意;
--exclude=FILE:在压缩的过程中,不要将 FILE 打包!本回答被提问者采纳

linux解压文件命令整理

今天尝试编译内核,下载到了一份tar.xz结尾的压缩文件,网上解决方法比较少,不过还是找到了,如下:

 

$xz -d ***.tar.xz

$tar -xvf  ***.tar

      可以看到这个压缩包也是打包后再压缩,外面是xz压缩方式,里层是tar打包方式。


      补充:目前可以直接使用 tar xvJf  ***.tar.xz来解压


以上是关于linux tar 是压缩还是解压的主要内容,如果未能解决你的问题,请参考以下文章

Linux下tar.xz结尾的文件的解压方法

win主机下,怎样解压linux系统压缩的tar.gz 和 tar.bz2 格式的压缩包?

Centos压缩&解压

Centos7 linux 解压文件失败,如图所示

Linux 压缩与解压

Linux下最常用的10个文件压缩工具