菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
86
0

打包命令tar

原创
05/13 14:22
阅读数 21913

tar是linux下最常用的打包命令,使用tar打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的,也有.gz或.bz2结尾的。

1 常用参数

-c,--create      # 新建打包文件,搭配-v查看被打包的文件名
-t,--list        # 列出包的内容(有那些文件名)
-x,--extract     # 解压,搭配-C(解压到特定目录)
# 注意:-c -t -x不能同时出现在同一命令行中。

-j,--bzip2       # 通过bzip2的支持进行压缩和解压缩,文件名最好为*.tar.bz2
-z,--gzip        # 通过gzip的支持进行压缩或解压缩,文件名最好为*.tar.gz
-v,--verbose     # 显示详细
-f filename       # 接要被处理的文件,建议:-f 单独使用
-C,--directory = DIR     # 解压到特定目录DIR

-p                # 保留备份数据文件的权限和属性,常用于备份重要的数据
-P                # 保留打包文件的根目录
-X, --exclude-from=FILE   # 排除指定文件

2 常用组合示例

2.1 打包

参数组合:将a.txt b.txt c.txt d.txt这四个文件打包成abcd.tar.bz2。

#tar -cvj -f abcd.tar.bz2 a.txt b.txt c.txt d.txt

详情:

[@tc_57_161 lyy]# ll
total 28
-rw-r--r-- 1 root root 10240 Dec 12 18:50 a.txt
-rw-r--r-- 1 root root    10 Dec 12 18:48 b.txt
-rw-r--r-- 1 root root    10 Dec 12 18:49 c.txt
-rw-r--r-- 1 root root    10 Dec 12 18:49 d.txt
-rw-r--r-- 1 root root   196 Dec 12 18:51 new.tar.bz2
drwxr-xr-x 3 root root    24 Nov 23 19:32 project
drwxr-xr-x 2 root root   135 Dec  1 15:52 test
[@tc_57_161 lyy]# tar -cvj -f abcd.tar.bz2 a.txt b.txt c.txt d.txt
a.txt
b.txt
c.txt
d.txt
[@tc_57_161 lyy]# ll
total 32
-rw-r--r-- 1 root root   196 Dec 16 21:18 abcd.tar.bz2
-rw-r--r-- 1 root root 10240 Dec 12 18:50 a.txt
-rw-r--r-- 1 root root    10 Dec 12 18:48 b.txt
-rw-r--r-- 1 root root    10 Dec 12 18:49 c.txt
-rw-r--r-- 1 root root    10 Dec 12 18:49 d.txt
-rw-r--r-- 1 root root   196 Dec 12 18:51 new.tar.bz2
drwxr-xr-x 3 root root    24 Nov 23 19:32 project
drwxr-xr-x 2 root root   135 Dec  1 15:52 test

2.2查询

[@tc_57_161 lyy]# tar -jtv -f abcd.tar.bz2
-rw-r--r-- root/root     10240 2017-12-12 18:50 a.txt
-rw-r--r-- root/root        10 2017-12-12 18:48 b.txt
-rw-r--r-- root/root        10 2017-12-12 18:49 c.txt
-rw-r--r-- root/root        10 2017-12-12 18:49 d.txt

2.3 解压

命令:

# tar -jxv -f abcd.tar.bz2 -C mytar/
# -C 解压到哪个目录

详情:

[@tc_57_161 lyy]# mkdir mytar
[@tc_57_161 lyy]# tar -jxv -f abcd.tar.bz2 -C mytar/
a.txt
b.txt
c.txt
d.txt
[@tc_57_161 lyy]# ls -l mytar/
total 24
-rw-r--r-- 1 root root 10240 Dec 12 18:50 a.txt
-rw-r--r-- 1 root root    10 Dec 12 18:48 b.txt
-rw-r--r-- 1 root root    10 Dec 12 18:49 c.txt
-rw-r--r-- 1 root root    10 Dec 12 18:49 d.txt
[@tc_57_161 lyy]#

 

发表评论

0/200
86 点赞
0 评论
收藏