Linux基础命令之tar解压缩详解
原文地址:https://program-park.github.io/2022/07/31/linux_5/
tar
命令可以为 Linux 的文件和目录创建档案。利用tar
,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar
最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar
命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。
首先要弄清两个概念:
- 打包: 将一大堆文件或目录变成一个总的文件。
- 压缩: 将一个大的文件通过一些压缩算法变成一个小文件。
为什么要区分这两个概念呢?这源于 Linux 中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar
命令),然后再用压缩程序进行压缩(gzip
bzip2
命令)。
Linux 下最常用的打包程序就是tar
了,使用tar
程序打出来的包我们常称为tar
包,tar
包文件的命令通常都是以.tar
结尾的。生成tar
包后,就可以用其它的程序来进行压缩。
命令格式
tar [-cxtzjvfpPN] File or directory
命令功能
- 将多个文件或目录打包在一起,也可用来压缩和解压文件(
tar
本身不具有压缩、解压功能,他是通过调用 gzip 或 zip 实现的)。
命令参数
-A
:新增压缩文件到已存在的压缩;-B
:设置区块大小;-c
:建立新的压缩文件;-d
:记录文件的差别;-r
:添加文件到已经压缩的文件;-u
:添加改变了和现有的文件到已经存在的压缩文件;-x
:解开一个压缩文件;-t
:显示压缩文件的内容;-z
:支持 gzip 解压文件;-j
:支持 bzip2 解压文件;-Z
:支持 compress 解压文件;-v
:显示详细 tar 执行过程;-l
:文件系统边界设置;-k
:保留原有文件不覆盖;-m
:保留文件不被覆盖;-W
:确认压缩文件的正确性;-f
:指定压缩文件;-p
:使用原文件的原来属性(属性不会依据使用者而变);-P
:可以使用绝对路径来压缩;-b
:设置区块数目;-C
:切换到指定目录;-N
:打包比指定日期新的文件或文件夹;--help
:显示帮助信息;--version
:显示版本信息;--exclude
:压缩过程中不打包指定文件或文件夹;- 注:
- 在一条命令中,
-c
|-x
|-t
仅能存在一个; - 在
-f
之后要立即接档案名,例如使用tar -zcvfP tfile sfile
就是错误的写法,正确的写法是tar -zcvPf tfile sfile
;
- 在一条命令中,
使用范例
- 打包文件
tar -cvf log.tar test.txt # 仅打包,不压缩 tar -zcvf log.tar.gz test.txt # 打包后,以 gzip 压缩 tar -jcvf log.tar.bz2 test.txt # 打包后,以 bzip2 压缩 # 在参数-f之后的文件档名是自己取的,我们习惯上都用.tar来作为辨识;如果加-z参数,则以.tar.gz或.tgz来代表gzip压缩过的tar包; 如果加-j参数,则以.tar.bz2来作为tar包名
- 打包多个文件或文件夹
tar -zcvf log.tar.gz 1.txt test/ # 多个文件或文件夹之间用空格分割
- 打包所有 .jpg 文件
tar -zcvf file.tar.gz *.jpg
- 解包文件
tar -xvf log.tar tar -zxvf log.tar.gz tar -jxvf log.tar.bz2
- 解压压缩包到指定文件夹下
tar -zxvf log.tar.gz -C /data
- 查看 tar 包内有哪些文件
[root@localhost test]# tar -ztvf log.tar.gz -rw-r--r-- root/root 0 2022-07-31 01:06 test.txt
- 解压 tar 包中的部分文件
[root@localhost test]# tar -ztvf 1.tar.gz drwxr-xr-x root/root 0 2022-07-31 01:19 test/ -rw-r--r-- root/root 0 2022-07-31 01:17 1.txt [root@localhost test]# tar -zxvf 1.tar.gz 1.txt 1.txt # 可以透过tar -ztvf来查阅tar包内的文件名称,如果单只要一个文件,就可以透过这个方式来解压部分文件
- 打包文件并保留其权限
tar -zcvpf log.tar.gz 1.txt # 在想要保留原本文件的属性时,-p很重要
- 打包文件夹中比指定日期新的文件
tar -N "2022/07/30" -zcvf 1.tar.gz data/
- 排除指定文件或文件夹进行打包
tar --exclude data/1.txt -zcvf log.tar.gz data/* /etc
参考文献
【1】https://www.cnblogs.com/sui776265233/p/10185402.html
【2】https://www.jianshu.com/p/e4249f0e76e7
【3】https://blog.csdn.net/zjwlgr/article/details/122543552
【4】https://www.bilibili.com/read/cv14025026
Linux基础命令之tar解压缩详解相关推荐
- linux命令shutdown -r,linux基础命令shutdown的用法详解
搜索定时关机命令shutdown,发现我的博客少了一个shutdown命令,今天就补充一下,当然服务器上自己man或–help也可以解决了.开始内容补充: 由于Linux的关机与重启是一个非常重要的命 ...
- linux中whoami命令的作用是,linux whoami命令参数及用法详解(linux查看登陆用户名)
linux whoami命令参数及用法详解(linux查看登陆用户名) 2019年05月31日 | 萬仟网科技 | 我要评论 whoami 命令显示登录名.与使用命令 who 并指定 am i 不同, ...
- linux mount命令参数及用法详解
linux mount命令参数及用法详解 非原创,主要来自 http://www.360doc.com/content/13/0608/14/12600778_291501907.shtml. htt ...
- linux中group命令详解,linux groupmod命令参数及用法详解
需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作.接下来是小编为大家收集的linux groupmod命令参数及用法详解,希望能帮到大家. linux groupmod命令参数及用 ...
- linux的usermod命令参数,linux usermod命令参数及用法详解
linuxusermod命令参数及用法详解,linux修改用户账号信息命令,usermod可用来修改用户帐号的各项设定.接下来是小编为大家收集的linux usermod命令参数及用法详解,欢迎大家阅 ...
- Linux Bash命令关于程序调试详解
转载:http://os.51cto.com/art/201006/207230.htm 参考:<Linux shell 脚本攻略>Page22-23 Linux bash程序在程序员的使 ...
- linux中id命令的功能,Linux id命令参数及用法详解
Linux id命令参数及用法详解--Linux查看当前登陆用户uid,gid. 命 令:id 功能说明:查看显示目前登陆账户的uid和gid及所属分组及用户名 语 法:id [-g ...
- linux 内存 参数,linux free命令参数及用法详解(linux查看内存命令)
linux free命令参数及用法详解(linux查看内存命令) 2019年05月31日 | 萬仟网科技 | 我要评论 free指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段 ...
- linux nc参数,linux nc命令参数及用法详解之毕业纪
linux nc命令参数及用法详解 一.功能说明:强大的网络工具netcat 二.语 法:nc [options] [options] -d 后台模式 -e prog 程序 ...
最新文章
- hive根据已有表创建新表_Hive基础之创建表
- Java虚拟机JVM学习05 类加载器的父委托机制
- 《疯狂Java讲义》2
- 安卓应用安全指南 4.2.3 创建/使用广播接收器 高级话题
- Angular 7 和 .Net Core 2.2——全球天气(第1部分)
- HTML超文本标记语言(八)——表单form
- 闲来无事写写-Huffman树的生成过程
- 面试 AI 算法岗,你被要求复现顶会了嘛?
- h3c交换机堆叠(IRF)配置三步完成
- 设备通过海康EHOME协议接入EasyCVR视频无法播放的排查与分析
- 【深度学习基本概念】上采样、下采样、卷积、池化
- Js~弹出框插件jquery.boxy
- 概率逗号分号_概率里面的逗号
- python组合数计算cmnn_《Python机器学习——预测分析核心算法》——2.5 用实数值属性预测实数值目标:评估红酒口感...
- iwanna 关卡设计(挖坑)指南
- play框架使用起来(16)
- 程序员,在什么情况下加班是可接受的
- 可擦写光盘不能擦除和刻写_光盘的分类,光盘的擦除与刻录。
- Android6.0动态设置读写权限(Android拍照或从相册中选图片预览出现问题)
- Redis分布式锁的实现以及原理