『运维备忘录』之 TAR 命令详解

运维人员不仅要熟悉操作系统、服务器、网络等只是,甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作,持续给大家更新运维工作所需要接触到的知识点,希望大家喜欢。

今天我们要讲的是 TAR 命令


一、简介

在Linux平台上,tar 命令是主要的归档实用程序。了解各种 tar 命令选项将帮助您掌握归档文件操作。Tar(Tape ARchive,磁带归档的缩写,LCTT 译注:最初设计用于将文件打包到磁带上,现在我们大都使用它来实现备份某个分区或者某些重要的目录)是类 Unix 系统中使用最广泛的命令,用于归档多个文件或目录到单个归档文件中,并且归档文件可以进一步使用 gzip 或者 bzip2 等技术进行压缩。换言之,tar 命令也可以用于备份:先是归档多个文件和目录到一个单独的 tar 文件或归档文件,然后在需要之时将 tar 文件中的文件和目录释放出来。

二、基本语法

tar [选项] [文件名]
  • -c:建立新的备份文件
  • -C:切换到指定的目录
  • -d:对比备份文件内和文件系统上的文件的差异
  • -x:解压缩归档文件
  • -v:显示指令执行过程
  • -f:指定归档文件的文件名
  • -t:查看归档文件内容
  • -j:通过 bzip2 指令处理备份文件
  • -z:通过 gzip 指令处理备份文件
  • -r:向现有存档文件追加或更新文件或目录
  • -W:验证归档文件
  • --totals:备份文件建立后,列出文件大小
  • --delete:从备份文件中删除指定的文件
  • --wildcards:在 unix tar 命令中指定匹配模式

三、实例说明

假设 /home/test/testdir/ 目录下有以下几个文件:

  • /home/cyberpunk/testdir/file1.txt
  • /home/cyberpunk/testdir/file2.sh
  • /home/cyberpunk/testdir/file3.jpg

3.1. 创建一个 tar 格式的压缩文件

# 在当前工作目录的 /home/test/testdir 目录下创建一个名为 archive.tar 的 tar 归档文件:
tar -cvf archive.tar /home/test/testdir/

3.2. 创建压缩后的 tar.gz 存档文件

# 要创建一个压缩的 gzip 归档文件,我们需要使用选项 z
tar cvzf compressedArchive.tar.gz /home/test/testdir

3.3. 生成压缩率更高的 tar.bz2 文件

tar cvfj Archive.tar.bz2 /home/test/testdir

tar 的 bz2 压缩,可以创建比 gzip 文件小的归档。bz2 模式执行归档压缩和解压所需的时间比 gzip 模式多。通常,这个时间差可以忽略不计,但如果文件非常大,或者是文件数量非常多,那么时间差就会非常大。

3.4. 解压缩 tar 文件

tar -xvf Archive.tar -C /home/test/testdir/

要解压缩(提取)一个tar文件,将 x (提取)选项传递给该命令 使用不带 -C 选项的命令将在当前工作目录中提取存档。-C 选项告诉命令在哪里提取存档文件。

3.5. 解压缩 tar.gz(2) 文件

tar -xvf Archive.tar.gz
tar -xvf Archive.tar.bz2

使用 tar 命令创建的所有归档文件,都可以以相同的方式提取。

3.6. 查看 tar 归档内容

tar -tvf uploadprogress.tar

-rwxr--r-- root/root   1005 2020-10-19 12:33:42 file1.txt
-rwxr--r-- root/root   1005 2020-10-19 12:33:42 file2.txt
-rwxr--r-- root/root   1005 2020-10-19 12:33:42 file3.txt
-rwxr--r-- root/root   1005 2020-10-19 12:33:42 file4.txt

3.7. 从 tar 归档文件中提取文件

# 提取单个文件:
tar --extract --file=archive.tar file1.txt

# 提取多个文件:
tar -xvf Archive.tar "file 1" "file 2"

# 使用通配符提取文件组:
tar -xvf Archive.tar --wildcards *.txt'

3.8. 添加文件或目录到 tar 存档中

要向现有的 tar 文件中添加文件或目录,可以使用 r 选项。例如,我们将 xyz.txt 文件和 php 目录添加到现有的 Archive.tar 归档文件中:

tar -rvf Archive.tar xyz.txt  # add file
tar -rvf Archive.tar php      # add directory

Linux命令推荐网址:Linux命令大全(手册)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器学习-线性回归法

线性回归算法 解决回归问题思想简单,实现容易许多强大的非线性模型的基础结果具有很好的可解释性蕴含机器学习中的很多重要思想 样本特征只有一个,称为:简单线性回归 通过分析问题,确定问题的损失函数或者效用函数 通过最优化…

jsp课程管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 课程管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&…

Termux配置安卓编译环境

前言 Termux安装后,就相当于把手机变成了一台Linux服务器,而且现在手机卡通常是能拿到ipv6公网地址的,所以,这个服务器能干啥? 编程搭建网站跑脚本 本文讲述的就是怎么在Termux搭建安卓编译环境,实现手机…

CV | Medical-SAM-Adapter论文详解及项目实现

******************************* 👩‍⚕️ 医学影像相关直达👨‍⚕️******************************* CV | SAM在医学影像上的模型调研【20240207更新版】-CSDN博客 CV | Segment Anything论文详解及代码实现 本文主要讲解Medical-SAM-Adapter论文及项…

HTML 样式学习手记

HTML 样式学习手记 在探索网页设计的世界时,我发现HTML元素的样式调整真的是个很酷的环节。通过简单的属性设置,就能让文字换上五彩斑斓的颜色、变换各异的字体和大小。特别是那个style属性,感觉就像是一扇通往CSS魔法世界的大门。 代码小试…

【Python】虚拟环境miniconda安装(python3.7, python3.x)

背景 使用Python开发项目时,我们一般都需要安装环境,可能是在物理机上直接安装,也可能是在虚拟环境上安装,当前是怎么按照conda环境的示例,可以指定安装Python3.x的所有版本。 安装 首先,需要登录当前的…

零基础学Python之网络编程

1.什么是socket 官方定义: 套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用…

国产信创领跑者:暴雨信息的创新与实践

随着数字化转型的加速推进,信创产业作为数字经济发展的重要支柱,正日益受到社会各界的广泛关注。在这个大背景下,暴雨信息积极响应国家号召,全面适配国产化,推动信创产业的技术创新和应用拓展,成为了行业的…

AWS创建快照定期备份

备注:aws有快照定期备份工具,名字叫【生命周期管理器】 选择实例点击创建 点击下一步后设置备份频率等 然后点击创建即可

(Python)字典列表数据本地存储工具

前言 一个简单的实现简便 "列表字典" 数据存储本地。 适合不会SQL但又想实现数据存储本地的同学。 操作使用都非常简单。 文件只做了简单的加密处理,如果需要复杂加密的同学可以修改加密函数。 温馨提示: 1.使用前,在项目目录…

人工智能福利站,初识人工智能,图神经网络学习,第三课

🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…

九思OA user-list-3g sql注入

【产品&&漏洞简述】 九思OA办公软件全面实现协同工作、公文、流程审批、知识管理、项目管理、综合办公、信息共享、移动办公 等应用功能,并能够与其他异构系统整合,打破信息孤岛,建立完整的有效的企业工作平台和移动办公软件。 九思…

(2)(2.14) SPL Satellite Telemetry

文章目录 前言 1 本地 Wi-Fi(费用:30 美元以上,范围:室内) 2 蜂窝电话(费用:100 美元以上,范围:蜂窝电话覆盖区域) 3 手机卫星(费用&#xff…

ChatGPT学习第一周

📖 学习目标 掌握ChatGPT基础知识 理解ChatGPT的基本功能和工作原理。认识到ChatGPT在日常生活和业务中的潜在应用。 了解AI和机器学习的基本概念 获取人工智能(AI)和机器学习(ML)的初步了解。理解这些技术是如何支撑…

介绍一个关于 JSON 可视化的网站

最近在看到一个比较好玩的网站,可以将 JSON以可视化的方式展现出现,比如存在一下JSON数据: {"id": "f3bbc3bc-9f34-4bf7-8a0f-7e6f6e6fbb9a","isActive": false,"age": 25,"name": "…

阿里云服务器Windows系统无法远程连接到服务器桌面怎么办,选择通过Workbench远程连接进入不是桌面,而是命令行界面

最近发现阿里云的Windows系统服务器,点击“远程连接”后,如果直接点击默认的“通过Workbench远程连接”。 并不能直接进入服务器桌面,而是进入了命令行界面(我记得以前是可以的) 那么如何进入Windows系统服务器桌面呢 …

C语言第二十弹---指针(四)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 指针 1、字符指针变量 2、数组指针变量 2.1、数组指针变量是什么? 2.2、数组指针变量怎么初始化 3、⼆维数组传参的本质 4、函数指针变量 4.1…

蓝桥杯Web应用开发-CSS3 新特性

CSS3 新特性 专栏持续更新中 在前面我们已经学习了元素选择器、id 选择器和类选择器,我们可以通过标签名、id 名、类名给指定元素设置样式。 现在我们继续选择器之旅,学习 CSS3 中新增的三类选择器,分别是: • 属性选择器 • 子…

Mysql进阶(锁)

一、锁概述 两个事务的写操作之间的互相影响。隔离性要求同一时刻只能有一个事务对数据进行写操作,InnoDB通过锁机制来保证这一点。 锁机制基本原理: 事务在修改数据之前,需要先获得相应的锁;获得锁之后,事务便可以…

day03.C++函数与指针(含new与delete关键字,函数指针,指针函数,指针数组)

一.指针 #include<iostream> using namespace std; #define pi 3.14159//定义常量int main(){cout<<pi<<endl;int a10;int *pNULL;//定义指针p&a;cout<<"a的地址为&#xff1a;"<<p<<endl;cout<<"a"<&l…