Linux之tar打包解包命令

作者 : admin 本文共2086个字,预计阅读时间需要6分钟 发布时间: 2024-06-16 共1人阅读

Linux之tar打包解包命令

打包与压缩区别

打包,也称之为归档,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没有经过压缩,所占空间是其中所有文件和目录的总和。
压缩,将一个大文件通过压缩算法变为一个小文件。
Linux最常用的打包程序就是tar,使用tar打出来包通常以.tar结尾。生成tar包后,可以使用其他程序进行压缩。

【1】tar打包

打tar包

可以理解为把东西,归纳整理放入箱子或袋子中
命令格式

#把一系列文件打包成一个大文件,-cvf顺序不可改变
tar -cvf 打包名.tar 被打包的目录
tar -cvf 打包名.tar 被打包的文件1 被打包的文件2 被打包的文件3

选项

命令英文意义
ccreate生成档案文件,创建打包文件
vverbosely显示打包或解包过程
ffile指定打包文件名(.tar)或压缩包文件名

例子

[root@localhost opt]# tar -cvf test.tar 01.txt 02.txt 03.txt                  --打包文件到test.tar
01.txt
02.txt
03.txt
[root@localhost opt]# ll
总用量 25928
-rw-r--r--. 1 root root        0 6月  14 00:25 01.txt
-rw-r--r--. 1 root root       35 6月  14 00:25 02.txt
-rw-r--r--. 1 root root        0 6月  14 00:26 03.txt
-rw-r--r--. 1 root root    10240 6月  14 00:28 test.tar
[root@localhost opt]# mkdir -p aaa/aaa2 && mkdir bbb                         --创建两个目录
[root@localhost opt]# tar -cvf test2.tar 01.txt 02.txt 03.txt aaa/ bbb/      --目录也可以一起打包
01.txt
02.txt
03.txt
aaa/
aaa/aaa2/
bbb/
[root@localhost opt]# ll
总用量 25960
-rw-r--r--. 1 root root    10240 6月  14 00:33 01.txt
-rw-r--r--. 1 root root       35 6月  14 00:25 02.txt
-rw-r--r--. 1 root root        0 6月  14 00:26 03.txt
drwxr-xr-x. 3 root root       18 6月  14 00:31 aaa
drwxr-xr-x. 2 root root        6 6月  14 00:31 bbb
-rw-r--r--. 1 root root    20480 6月  14 00:33 test2.tar
-rw-r--r--. 1 root root    10240 6月  14 00:28 test.tar
[root@localhost opt]# 

【2】tar解包

解tar包

可以理解为把东西,从箱子或袋子取出来
命令格式

将打包的文件分解成一系列文件,放入当前位置或者指定位置。-xvf顺序不可改变
tar -xvf 打包名.tar
tar -xvf 打包名.tar -C 解包路径位置

选项

命令英文含义
xextract(提取)解包
C(大写)directory(目录)默认保存到当前目录,-C更改提取目录,注意:指定的提取目录必须提前存在。

例子

[root@localhost work]# ll
总用量 32
-rw-r--r--. 1 root root 20480 6月  14 00:45 test2.tar
-rw-r--r--. 1 root root 10240 6月  14 00:45 test.tar
drwxr-xr-x. 2 root root     6 6月  14 00:47 workspace
[root@localhost work]# tar -xvf test.tar                               --解包test.tar到当前目录
01.txt
02.txt
03.txt
[root@localhost work]# ll                                              --解包后出现了01.txt 02.txt 03.txt
总用量 36
-rw-r--r--. 1 root root     0 6月  14 00:25 01.txt
-rw-r--r--. 1 root root    35 6月  14 00:25 02.txt
-rw-r--r--. 1 root root     0 6月  14 00:26 03.txt
-rw-r--r--. 1 root root 20480 6月  14 00:45 test2.tar
-rw-r--r--. 1 root root 10240 6月  14 00:45 test.tar
drwxr-xr-x. 2 root root     6 6月  14 00:47 workspace
[root@localhost work]# tar -xvf test2.tar -C /opt/work/workspace/     --解包test2.tar到指定目录,目录必须提前存在
01.txt
02.txt
03.txt
aaa/
aaa/aaa2/
bbb/
[root@localhost work]# tree workspace/                                --通过tree命令查看workspace/里结构,有了
workspace/
├── 01.txt
├── 02.txt
├── 03.txt
├── aaa
│   └── aaa2
└── bbb

3 directories, 3 files
[root@localhost work]# 
本站无任何商业行为
个人在线分享 » Linux之tar打包解包命令
E-->