Linux压缩/解压缩工具:tar命令详解

news2024/9/23 13:25:12

目录

一、概述

二、基本概念

三、tar命令的基本语法

1、基本语法

2、常用选项

3、帮助获取

四、用法和示例

1. 创建归档文件

(1)用法

(2)示例

2. 解压缩归档文件

(1)用法

(2)示例

3. 查看归档文件内容

(1)用法

(2)示例

4. 压缩选项

(1)压缩选项

(2)示例

5. 其他常用选项

五、其他说明

六、总结


一、概述

        Linux中的tar命令是一个非常强大的工具,用于打包和解压文件。它可以将多个文件和目录合并成一个文件(称为归档文件),也可以对归档文件进行压缩和解压缩,以节省存储空间和提高传输效率。

二、基本概念

         归档(Archiving):将多个文件和目录合并成一个文件的过程。

         压缩(Compression):通过特定的算法减少文件大小的过程。

三、tar命令的基本语法

1、基本语法

        tar [options] [file(s)]

           或

        tar [选项] [归档文件名] [文件或目录...]

2、常用选项

        tar的常用选项如下:

  • -c: 创建新的归档文件。
  • -x: 解开已有的归档文件。
  • -t: 列出归档文件的内容。
  • -f: 指定归档文件名。
  • -v: 显示详细的过程。
  • -p: 保留原始文件的权限和其他属性。
  • -z: 使用 gzip 压缩或解压归档文件。
  • -j: 使用 bzip2 压缩或解压归档文件。
  • -J: 使用 xz 压缩或解压归档文件。
  • -u: 更新归档文件,只添加那些比归档中的副本新的文件。
  • -a: 自动选择压缩方式(根据归档文件扩展名 .gz, .bz2 或 .xz)。
  • -C: 指定解压文件的目标目录。
  • -P 或 -p: 使用绝对路径而不是相对路径。

3、帮助获取

       在命令行中输入指令:

        tar  --help

       出现如下图所示的帮助信息:

四、用法和示例

1. 创建归档文件

(1)用法

  -c:创建一个新的归档文件。

  -v:在处理过程中显示详细信息(verbose模式)。

  -f:指定归档文件的名称(file选项)。注意,-f选项必须紧跟归档文件名,且归档文件名必须在所有文件名和目录名之前。

(2)示例

        tar -cvf archive0802.tar  file1.txt dir1/

       执行结果如下图所示:

2. 解压缩归档文件

(1)用法

          -x:从归档文件中提取文件。

          同样使用-v和-f选项来显示详细信息和指定归档文件名。

(2)示例

        tar -xvf archive0802.tar

       执行结果如下图所示:

        可以看出,解压结果跟原来文件和目录一样,

3. 查看归档文件内容

(1)用法

          -t:列出归档文件中的内容,不解压。

(2)示例

        tar -tvf archive0802.tar

       执行结果如下图所示:

4. 压缩选项

(1)压缩选项

  -z:通过gzip压缩或解压缩归档文件。生成的文件名通常为.tar.gz。

  -j:通过bzip2压缩或解压缩归档文件。生成的文件名通常为.tar.bz2。

  -J:通过xz压缩或解压缩归档文件。生成的文件名通常为.tar.xz。

(2)示例

  使用gzip压缩:tar -czvf archive0802.tar .gz file1.txt dir1/

  使用bzip2压缩:tar -cjvf archive0802.tar .bz2 file1.txt dir1/

  使用xz压缩:tar -cJvf archive0802.tar .xz file1.txt dir1/

5. 其他常用选项

  -p:保留原文件的权限和属性。

  -r:向已存在的归档文件中添加文件。

  -C:指定解压缩的目录路径。

  --exclude:在打包时排除特定的文件或目录。

五、其他说明

        1. 在使用tar命令时,-f选项及其后的归档文件名必须放在所有文件名和目录名之前。

        2. 默认情况下,tar命令会将相对路径的文件名解释为相对目录进行打包。如果指定了绝对路径,tar会将首个/去掉以防止解压时替换系统目录。

        3. 在处理大文件或目录时,建议使用压缩选项以减少磁盘空间占用和提高传输效率。

        4. tar命令支持多种压缩算法,如gzip、bzip2和xz等,可以根据需要选择合适的压缩方式。

        5. tar 还有很多高级选项和用法,例如排除某些文件、使用通配符等。你可以在 man tar 中找到更详细的文档。

六、总结

        tar命令是Linux系统中一个功能强大的归档和压缩工具,通过灵活的选项组合,可以轻松实现文件的打包、压缩、解压和查看等操作。

        掌握tar命令的基本用法和常用选项,对于提高Linux系统的文件管理能力和运维能力具有重要意义。


文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1971971.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

经典非比较排序—计数排序的Java实现方式

目录 1.具体思路: 2.代码实现: 3.代码分析 4.示例测试: 测试源码: 测试结果: 计数排序,又被称为鸽巢原理,属于桶排序的一种,其本质是通过哈希映射思想,设定计数数组输入以…

音视频入门基础:WAV专题(5)——FFmpeg源码中解码WAV Header的实现

音视频入门基础:WAV专题系列文章: 音视频入门基础:WAV专题(1)——使用FFmpeg命令生成WAV音频文件 音视频入门基础:WAV专题(2)——WAV格式简介 音视频入门基础:WAV专题…

论文翻译:Large Language Models in Education: Vision and Opportunities

Large Language Models in Education: Vision and Opportunities 文章目录 教育中的大型语言模型:愿景与机遇摘要1 引言2. 教育与LLMsA. 教育背景B. LLMs背景C. 智能教育D. 教育中的LLMs 3. EduLLMs的关键技术4. LLM赋能教育A. LLMs在教育中的应用B. LLMs下教育的特…

免费分享:全国传统村落空间分布数据(附下载方法)

数据简介 本数据是在中国传统村落名录的基础上,通过地理编码,制作成具有空间坐标信息的矢量数据。 数据属性 数据名称:全国传统村落空间分布数据数据时间:2012年至今,更新至第五批空间位置:全国数据格式&…

opencascade AIS_TrihedronOwner源码学习对象的实体所有者用于选择管理

opencascade AIS_TrihedronOwner 前言 AIS_Trihedron对象的实体所有者用于选择管理。 在OpenCascade的AIS(交互对象框架)中,管理类似AIS_Trihedron的对象的选择涉及理解如何处理实体(或所有者)以进行选择。 方法 1…

【单片机毕业设计选题24095】-基于手机端的电池电压采集系统

系统功能: 系统上电后,OLED显示三组18650锂电池电压。 第一行显示第一组锂电池电压 第二行显示第二组锂电池电压 第三行显示第三组锂电池电压 第四行显示电压设定阈值 短按B4按键增加电压设定阈值 短按B5按键减小电压设定阈值 如果任意一组电池电压小于电压…

红酒与季节:品味四季的风情

四季轮转,岁月更迭,每个季节都有其不同的韵味与风情。当定制红酒洒派红酒(Bold & Generous)与四季相遇,它们共同编织出一幅幅美丽的味觉画卷,让我们在品味中感受四季的风情。 一、春之序曲&#xff1a…

【ESP01开发实例】-ESP-01驱动DHT11和DH22传感器

ESP-01驱动DHT11和DH22传感器 文章目录 ESP-01驱动DHT11和DH22传感器1、DHT11/DHT22传感器介绍2、LCD1602介绍3、硬件准备与接线4、代码实现本主题介绍如何使用 DHT11 和 DHT22 相对湿度和温度传感器与 ESP8266 ESP-01 Wi-Fi 模块,将相对湿度和温度的测量值显示在 162 LCD 屏幕…

C++回顾——多态

一、定义 ①从广义上说,多态性是指:一段程序能够处理多种类型对象的能力。在C语言中,这种多态性可以通过包含多态4种形式来实现。强制多态、重载多态、类型参数化多态、包含多态。 ②从实现上来说,多态的分类:静态多态、动态多态。 二、 广…

云原生安全检测工具(容器安全、trivy、veinmind-tools)

目录 trivy 功能 扫描方式&目标 安装 漏洞库下载及更新 漏洞库扫描原理 官方漏洞库生成 使用 扫描镜像 扫描 wazuh-daemonset 所有漏洞 扫描 wazuh-daemonset 高危、严重漏洞(漏洞过滤) 扫描文件系统 Git 存储库漏洞扫描 报告输出格式 veinmind-tools 1.…

Vue的学习(一)

目录 一、Vue的介绍 二、指令 1.v-text 2.v-html 3.v-show 4.v-if 1)v-if与v-show的区别 5.v-else 6.v-else-if 7.v-for 1)v-for 与v-if的优先级 8.v-on:click 9.v-bind 10.v-model 三、表单修饰符 1. .lazy 修饰符 2. .number修饰符…

算法通关:014_2:用队列实现栈

文章目录 题目思路问题总结导包有问题,java提供的有关队列的方法不能调用。queue.add()和queue.offer(n),这两个方法有什么区别什么叫用LinkedList实现队列 代码结果 题目 LeetCode 225. 用队列实现栈 思路 问题总结 导包有问题,java提供的…

银行业数据分析的关键应用场景探索

“ 随着数字经济的蓬勃发展,银行业正经历着前所未有的变革。从传统的存贷款业务到如今的数字化服务,数据分析在银行中扮演着核心角色。本文将探讨银行业数据分析的主要场景,以及选型适配银行业分析需求的数据库技术。” 国内的商业化银行大体…

二维码直达App,Xinstall为你打通运营任督二脉

在移动互联网时代,App的推广和运营显得尤为重要。然而,许多企业在投入大量资源进行App推广和运营时,总会遇到一些棘手的问题,如用户转化率低、数据分析困难等。今天,我们要为大家揭秘一个神奇的助手——Xinstall&#…

RocketMQ5.0 生产者

生产者消息类型: 延迟队列的生产者 package mainimport ("context""fmt""github.com/apache/rocketmq-clients/golang/v5""github.com/apache/rocketmq-clients/golang/v5/credentials"errgroup2 "golang.org/x/sync…

实现函数返回字符的种类

文章目录 一、题目二、思路三、代码实现 提示:以下是本篇文章正文内容,下面案例可供参考 一、题目 例如: 分别输入:a B 6分别输出:# * ? 二、思路 第一步 获取键盘输入的字符,键盘输入的话…

服务器 Linux 的文件系统初探

好久没更新文章了,最近心血来潮,重新开始知识的累计,做出知识的沉淀~ 万事万物皆文件 文件系统:操作系统如何管理文件,内部定义了一些规则或者定义所以在 Linux 中所有的东西都是以文件的方式进行操作在 Linux 中&am…

Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget

文章目录 一、常见Linux发行版本二、Linux中yum、rpm、apt-get、wget的区别2.1 yum2.2 rpm2.3 apt-get2.4 wget2.5 总结 三、CentOS中yum的作用3.1 yum清空缓存列表3.2 yum显示信息3.3 yum搜索、查看3.4 yum安装3.5 yum删除、卸载程序3.6 yum包的升级、降级 四、Ubuntu中apt-ge…

线段树、贪心与推销员

[NOIP 2015] 推销员 - 洛谷 核心&#xff1a;利用线段树处理贪心内容。建两个线段树维护两端。 #include<bits/stdc.h> using namespace std; int n; int d[100100]; int t[1000100]; int deep;//当前最深 int ans; struct node{int id,mx; }; struct sgt{int a[10001…