Linux命令200例:tar命令主要用于创建、查看和提取归档文件(常用)

🏆作者简介,黑夜开发者,全栈领域新星创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。
🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。
🏆本文已收录于专栏:Linux命令大全。
🏆本专栏我们会通过具体的系统的命令讲解加上鲜活的实操案例对各个命令进行深入讲解。欢迎提前锁定关注。
🎉欢迎 👍点赞✍评论⭐收藏
文章目录
- 一、概述
- 二、基本用法
- 2.1 创建tar归档文件
- 2.2 查看tar归档文件内容
- 2.3 提取tar归档文件内容
- 2.4 压缩tar归档文件
- 2.5 解压缩tar归档文件
- 三、应用场景
- 3.1 文件备份
- 3.2 软件部署
- 3.3 日志归档
- 3.4 网站迁移
- 3.5 数据库备份
- 3.6 打包源代码
- 3.7 恢复数据
- 3.8 文件共享
- 3.9 部分文件提取
- 3.10 压缩文件传输
- 四、实际例子
- 4.1 创建tar归档文件
- 4.2 查看tar归档文件内容
- 4.3 提取tar归档文件内容
- 4.4 压缩tar归档文件
- 4.5 解压缩tar归档文件
- 4.6 部分文件提取
- 4.7 备份数据库文件
- 4.8 网站迁移
- 4.9 打包源代码
- 4.10 恢复数据
- 五、总结
一、概述
Linux系统中的tar命令主要用于创建、查看和提取tar归档文件。tar即"tape archive"的缩写,最初设计用于磁带备份,现在已经广泛用于文件归档和压缩。
本文将详细介绍tar命令的使用方法,并列举出10个实际的例子,帮助读者全面了解和掌握tar命令的应用。
二、基本用法
2.1 创建tar归档文件
tar -cvf archive.tar file1 file2 ...
上述命令将创建一个名为archive.tar的归档文件,其中包含了file1、file2等多个文件。
2.2 查看tar归档文件内容
tar -tvf archive.tar
上述命令将列出归档文件archive.tar中包含的所有文件和目录。
2.3 提取tar归档文件内容
tar -xvf archive.tar
上述命令将提取归档文件archive.tar中的所有文件和目录。
2.4 压缩tar归档文件
tar -czvf archive.tar.gz file1 file2 ...
上述命令将使用gzip进行压缩,并创建一个名为archive.tar.gz的压缩归档文件。
2.5 解压缩tar归档文件
tar -xzvf archive.tar.gz
上述命令将解压缩并提取名为archive.tar.gz的压缩归档文件中的所有文件和目录。
三、应用场景
3.1 文件备份
tar命令可以将多个文件或目录打包成一个归档文件,方便进行备份和传输。
3.2 软件部署
在服务器环境下,使用tar命令将软件打包成归档文件后,可以方便地在其他服务器上进行部署。
3.3 日志归档
在系统日志较大时,可以使用tar命令将日志文件打包归档,以节省存储空间。
3.4 网站迁移
当需要将网站从一个服务器迁移到另一个服务器时,可以使用tar命令将整个网站目录打包,并在目标服务器上解压缩。
3.5 数据库备份
使用tar命令可以方便地备份数据库文件,同时还可以进行压缩,以节省磁盘空间。
3.6 打包源代码
对于开发者来说,使用tar命令可以将源代码打包成一个归档文件,方便进行版本控制和共享。
3.7 恢复数据
当需要恢复已备份的文件时,可以使用tar命令将归档文件解压缩并提取出需要恢复的文件。
3.8 文件共享
使用tar命令可以将多个文件打包成一个归档文件,方便进行文件的共享和传输。
3.9 部分文件提取
通过指定要提取的文件或目录,可以使用tar命令只提取归档文件中的部分内容。
3.10 压缩文件传输
在网络传输过程中,压缩归档文件可以减少数据传输量,提高传输速度。
四、实际例子
4.1 创建tar归档文件
tar -cvf backup.tar /path/to/backup
该命令将创建一个名为backup.tar的归档文件,其中包含了/path/to/backup目录下的所有文件和目录。
4.2 查看tar归档文件内容
tar -tvf backup.tar
该命令将列出归档文件backup.tar中包含的所有文件和目录。
4.3 提取tar归档文件内容
tar -xvf backup.tar
该命令将提取归档文件backup.tar中的所有文件和目录。
4.4 压缩tar归档文件
tar -czvf backup.tar.gz /path/to/backup
该命令将使用gzip进行压缩,并创建一个名为backup.tar.gz的压缩归档文件。
4.5 解压缩tar归档文件
tar -xzvf backup.tar.gz
该命令将解压缩并提取名为backup.tar.gz的压缩归档文件中的所有文件和目录。
4.6 部分文件提取
tar -xvf backup.tar file1 file2 ...
该命令将提取归档文件backup.tar中的file1、file2等指定的文件。
4.7 备份数据库文件
tar -czvf db_backup.tar.gz /path/to/database
该命令将使用gzip进行压缩,并创建一个名为db_backup.tar.gz的压缩归档文件,其中包含了数据库文件。
4.8 网站迁移
tar -cvf website.tar /var/www/html
该命令将创建一个名为website.tar的归档文件,其中包含了网站目录/var/www/html下的所有文件和目录。
4.9 打包源代码
tar -cvf source_code.tar /path/to/source_code
该命令将创建一个名为source_code.tar的归档文件,其中包含了源代码目录/path/to/source_code下的所有文件和目录。
4.10 恢复数据
tar -xvf data_backup.tar -C /path/to/restore
该命令将提取归档文件data_backup.tar中的所有文件和目录,并恢复到指定的路径/path/to/restore。
五、总结
本文介绍了Linux系统中tar命令的基本用法及常见应用场景,并给出了10个实际的例子。通过学习和掌握tar命令,读者可以更好地进行文件归档、备份和压缩等操作。希望本文对读者在使用Linux系统时有所帮助。
相关文章:
Linux命令200例:tar命令主要用于创建、查看和提取归档文件(常用)
🏆作者简介,黑夜开发者,全栈领域新星创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 &…...
【Django】Task4 序列化及其高级使用、ModelViewSet
【Django】Task4 序列化及其高级使用、ModelViewSet Task4主要了解序列化及掌握其高级使用,了解ModelViewSet的作用,ModelViewSet 是 Django REST framework(DRF)中的一个视图集类,用于快速创建处理模型数据的 API 视…...
FFMPEG RTMP流打开速度慢优化方法一
先上使用方法: codec_ctx->flags | AVFMT_FLAG_NOBUFFER; AVFMT_FLAG_NOBUFFER 标记如果没有设置,就会导致打开时探测的数据包丢AVFormatContext的缓存区中。 播放的时候,就从这些数据包开始,但是整个探测过程时间可能较长&…...
NextJs - Middleware(中间件)
中间件允许您在请求完成之前运行代码。然后,根据传入的请求,您可以通过重写、重定向、修改请求或响应标头或直接响应来修改响应。 中间件在缓存内容和路由匹配之前运行。 使用规则 使用项目根目录中的文件 middleware.ts(或 .js)…...
记录几个Hudi Flink使用问题及解决方法
前言 如题,记录几个Hudi Flink使用问题,学习和使用Hudi Flink有一段时间,虽然目前用的还不够深入,但是目前也遇到了几个问题,现在将遇到的这几个问题以及解决方式记录一下 版本 Flink 1.15.4Hudi 0.13.0 流写 流写…...
Go:测试框架GoConvey 简介
快速开始 GoConvey是一个完全兼容官方Go Test的测试框架,一般来说这种第三方库都比官方的功能要强大、更加易于使用、开发效率更高,闲话少说,先看一个example: package utils import (. "github.com/smartystreets/goconvey…...
JavaWeb-特殊文件(propertis与XML)
目录 Properties文件 一.properties介绍 二.properties使用 三.解决中文乱码问题 XML文件 一.XML介绍 二.XML文件的语法规则 三.XML的使用 Properties文件 一.properties介绍 1.什么是properties文件 Properties文件是一种常用的配置文件格式,用于存储键值…...
ffmpeg合并mp4视频文件
下载ffmpeg Download FFmpeg 2配置环境 右键此电脑-》属性-》高级系统设置 环境变量-》path 解压上面ffmpeg压缩包,找到bin目录,复制完整路径,添加到path环境变量中 测试ffmpeg ffmpeg合并MP4文件 创建一个文本文件,例如inpu…...
ATF BL1/BL2 ufs_read_blocks/ufs_write_blocks使用分析
ATF BL1/BL2 ufs_read_blocks/ufs_write_blocks使用分析 1 ATF的下载链接2 ATF BL1/BL2 ufs_read_blocks/ufs_write_blocks处理流程2.1 ATF BL1/BL2 ufs_read_blocks2.2 ATF BL1/BL2 ufs_write_blocks 3 UFS System Model4 ufs_read_blocks/ufs_write_blocks详细分析4.1 ufs_re…...
Elasticsearch(十二)搜索---搜索匹配功能③--布尔查询及filter查询原理
一、前言 本节主要学习ES匹配查询中的布尔查询以及布尔查询中比较特殊的filter查询及其原理。 复合搜索,顾名思义是一种在一个搜索语句中包含一种或多种搜索子句的搜索。 布尔查询是常用的复合查询,它把多个子查询组合成一个布尔表达式,这些…...
解决Windows下的docker desktop无法启动问题
以管理员权限运行cmd 报错: docker: error during connect: Post http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.40/containers/create: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows,…...
LLM生成式 AI 项目生命周期Generative AI project lifecycle
在本课程的其余部分中,您将学习开发和部署LLM驱动应用所需的技巧。在这个视频中,您将了解一个能帮助您完成此工作的生成式AI项目生命周期。此框架列出了从构思到启动项目所需的任务。到课程结束时,您应该对您需要做的重要决策、可能遇到的困难…...
java高并发系列 - 第13天:JUC中的Condition对象
java高并发系列 - 第13天:JUC中的Condition对象 java高并发系列第13篇文章 本文内容 synchronized中实现线程等待和唤醒Condition简介及常用方法介绍及相关示例使用Condition实现生产者消费者使用Condition实现同步阻塞队列Object对象中的wait(),notify()方法,用于线程等待…...
【TTY子系统】printf与printk深入驱动解析
tty子系统解析 tty子系统是一个庞大且复杂,也是内核维护者所头大的子系统。 At a first glance, the TTY layer wouldn’t seem like it should be all that challenging. It is, after all, just a simple char device which is charged with transferring byte-o…...
无涯教程-PHP - 全局变量函数
全局变量 与局部变量相反,可以在程序的任何部分访问全局变量。通过将关键字 GLOBAL 放置在应被识别为全局变量的前面,可以很方便地实现这一目标。 <?php$somevar15;function addit() {GLOBAL $somevar;$somevar;print "Somevar is $somevar";}addit(); ?> …...
shell脚本之循环语句
循环语句 循环含义 将某代码段重复运行多次,通常有进入循环的条件和退出循环的条件 for循环语句 一般知道循环次数使用for循环 第一类 格式1: for名称 in 取值次数;do;done; 格式2: for 名称 in {取值列表} do done# 打印20次 for i i…...
派森 #P122. 峰值查找
描述 给定一个长度为n的列表nums,请你找到峰值并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个所在位置即可。 (1)峰值元素是指其值严格大于左右相邻值的元素。严格大于即不能有等于; &…...
基础网络详解4--HTTP CookieSession 思考
一、cookie技术思考 一台多用户浏览器发起了三笔请求,将某款产品放入购物车中,A一次,选择了篮球;B两次,第一次选了足球,第二次选了钢笔。如何确认选择篮球、足球、钢笔的请求属于谁呢?如果不确认…...
14. 利用Canvas自制时钟组件
1. 说明 在自定义时钟组件时,使用到的基本控件主要是Canvas,在绘制相关元素时有两种方式:一种时在同一个canvas中绘制所有的部件元素,这样需要不断的对画笔和画布的属性进行保存和恢复,容易混乱;另一种就是…...
微信小程序使用云存储和Markdown开发页面
最近想在一个小程序里加入一个使用指南的页面,考虑到数据存储和减少页面的开发工作量,决定尝试在云存储里上传Markdown文件,微信小程序端负责解析和渲染。小程序端使用到一个库Towxml。 Towxml Towxml是一个可将HTML、Markdown转为微信小程…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
P3 QT项目----记事本(3.8)
3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...
Vite中定义@软链接
在webpack中可以直接通过符号表示src路径,但是vite中默认不可以。 如何实现: vite中提供了resolve.alias:通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...
