本文主要是介绍Linux之tar打包解包命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Linux之tar打包解包命令
打包与压缩区别
打包,也称之为归档,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没有经过压缩,所占空间是其中所有文件和目录的总和。
压缩,将一个大文件通过压缩算法变为一个小文件。
Linux最常用的打包程序就是tar,使用tar打出来包通常以.tar结尾。生成tar包后,可以使用其他程序进行压缩。
【1】tar打包
打tar包
可以理解为把东西,归纳整理放入箱子或袋子中
命令格式
#把一系列文件打包成一个大文件,-cvf顺序不可改变
tar -cvf 打包名.tar 被打包的目录
tar -cvf 打包名.tar 被打包的文件1 被打包的文件2 被打包的文件3
选项
命令 | 英文 | 意义 |
---|---|---|
c | create | 生成档案文件,创建打包文件 |
v | verbosely | 显示打包或解包过程 |
f | file | 指定打包文件名(.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 解包路径位置
选项
命令 | 英文 | 含义 |
---|---|---|
x | extract(提取) | 解包 |
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
└── bbb3 directories, 3 files
[root@localhost work]#
这篇关于Linux之tar打包解包命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!