tar命令——归档/压缩和解压缩文件
tar命令的功能是将一个或多个文件归档成一个文件,同时可结合gzip、bzip2和xz等压缩命令实现文件的压缩和解压缩。
tar 命令的语法格式如下:
tar [选项] 文件或目录
常用选项如下:
| 选项 | 作用/含义 |
| -c | 建立归档文件 |
| -x | 从归档文件中解出文件 |
| -z | 通过gzip进行压缩/解压缩,建议文件名为*.tar.gz |
| -j | 通过bzip2进行压缩/解压缩,建议文件名为*.tar.bz2 |
| -J | 通过xz进行压缩/解压缩,建议文件名为*.tar.xz |
| -v | 显示压缩/解压缩的处理过程 |
| -f | 后接要处理的归档文件名 |
| -t | 查看归档文件的内容包含有哪些文件 |
| -C | 后接目录,指定将压缩包解压到该目录中 |
| -p | 小写p,保留备份数据的原本权限和属性,常用于备份重要的配置文件 |
| -P | 大写P,保留文件绝对路径,即要求备份文件中含有根目录 |
| -N | 后接日期,只保存较指定日期更新的文件 |
| -A | 追加tar文件至归档文件 |
| -r | 追加文件至归档文件末尾 |
| -u | 仅追加比归档中副本更新的文件 |
| --exclude=PATTERN | 在打包压缩时,不将以 PATTERN 指定的文件归档压缩 |
| --remove-files | 打包/压缩之后删除源文件 |
特别说明:-c和-x选项不能同时出现;-z、-j和-J等表示压缩技术的选项也不能同时出现。选项-f后面必须紧跟要处理归档文件。
打包/压缩实例演示:
1、使用gzip压缩格式打包/etc目录下所有扩展名为conf的文件,并显示打包压缩过程
[root@myEuler ~]# tar czvf etc_bak.tar.gz /etc/*.conf
tar: 从成员名中删除开头的“/”
/etc/chrony.conf
/etc/dracut.conf
/etc/e2scrub.conf
/etc/fuse.conf
……此处省略部分输出……
2、使用bzip2压缩格式打包/tmp目录,并显示压缩过程
[root@myEuler ~]# tar -cjvf tmp_bak.tar.bz2 /tmp
tar: 从成员名中删除开头的“/”
/tmp/
/tmp/.X1-lock
……此处省略部分输出……
3、将当前工作目录内所有文件打包归档,但不压缩
[root@myEuler ~]# tar cvf bak.tar .
./
./.bash_logout
./.vnc/
……此处省略部分输出……
4、将当前工作目录内所有扩展名为cfg的文件打包,但不压缩,且删除原始文件
[root@myEuler dir1]# tar cvf back.tar *.cfg --remove-files
file3.cfg
5、备份指定文件/目录,要求保留原文件的权限和属性
[root@myEuler ~]# tar cpzvf sshd_config.tar.gz /etc/ssh/sshd_config
tar: 从成员名中删除开头的“/”
/etc/ssh/sshd_config
6、备份文件/目录,要求保留根目录
从前面的示例可以看到,执行压缩时,都会提示【tar: 从成员名中删除开头的“/”】,若要消除该提示,要求保留根目录,则可使用选项-P。
[root@myEuler ~]# tar cPpzvf sshd_config_P.tar.gz /etc/ssh/sshd_config
/etc/ssh/sshd_config#对比有选项-P和没有-P的区别
# sshd_config.tar.gz压缩包没有使用选项-P
[root@myEuler ~]# tar tvf sshd_config.tar.gz
tar: 从成员名中删除开头的“/”
-rw------- root/root 5006 2022-11-22 16:51 /etc/ssh/sshd_config# sshd_config1.tar.gz压缩包有使用选项-P
[root@myEuler ~]# tar tvf sshd_config_P.tar.gz
-rw------- root/root 5006 2022-11-22 16:51 etc/ssh/sshd_config
7、打包压缩某个目录,但要求排除某些文件
在很多时候,我们要对某一个目录打包/压缩,这个目录下有几十个子目录和子文件,现需要排除其中某些目录或文件,这时就需要用到--exclude选项。
[root@myEuler ~]# ll /etc/ssh/sshd_config
-rw-------. 1 root root 5006 11月 22 16:51 /etc/ssh/sshd_config#所有以config结尾的文件均被排除
[root@myEuler ~]# tar czvf ssh.tar.gz --exclude=*config /etc/ssh
tar: 从成员名中删除开头的“/”
/etc/ssh/
/etc/ssh/ssh_host_rsa_key.pub
/etc/ssh/moduli
/etc/ssh/ssh_host_ed25519_key
/etc/ssh/ssh_host_ecdsa_key.pub
/etc/ssh/ssh_host_rsa_key
/etc/ssh/ssh_config.d/
/etc/ssh/ssh_config.d/05-redhat.conf
/etc/ssh/ssh_host_ed25519_key.pub
/etc/ssh/ssh_host_ecdsa_key
注:在openEuler中,--exclude选项必须在必选选项之后,本示例中就不能放在被打包目录/etc/ssh之后。
解包/解压缩实例演示:
8、解包某个归档文件到当前工作目录
[root@myEuler dir1]# tar xvf back.tar
file3.cfg
9、解压缩某个压缩包至指定目录
注意,这个指定的目录必须事先已存在。
[root@myEuler ~]# mkdir /opt/temp
[root@myEuler ~]# tar xjvf tmp_bak.tar.bz2 -C /opt/temp
tmp/
tmp/.X1-lock
……此处省略部分输出……
10、查看某个压缩包内包含的文件,但要求不进行解包/解压缩
[root@myEuler ~]# tar tvf etc_bak.tar.gz
-rw-r--r-- root/root 1307 2021-12-16 20:17 etc/chrony.conf
-rw-r--r-- root/root 117 2022-07-28 08:00 etc/dracut.conf
-rw-r--r-- root/root 685 2022-09-23 08:00 etc/e2scrub.conf
相关文章:
tar命令——归档/压缩和解压缩文件
tar命令的功能是将一个或多个文件归档成一个文件,同时可结合gzip、bzip2和xz等压缩命令实现文件的压缩和解压缩。 tar 命令的语法格式如下: tar [选项] 文件或目录 常用选项如下: 选项作用/含义-c建立归档文件-x从归档文件中解出文件-z通…...
Softing smartLink网关——推进过程工业数字化转型
虽然在过程工业中各工厂所投入的运营时间千差万别,但仍需按照新标准来进行有效控制和管理,而这就需要使用一种能够聚合其异构数据的数字通信架构。对此,Softing提供了两种网关解决方案,可用于将过程工业通信架构集成到现有以太网系…...
Spark的常用算子
Spark的常用算子 目录内容Spark的常用算子一、转换算子(Transformation)二、行动算子(Action)三、键值对算子(PairRDDFunctions)四、文件系统算子(File System)Spark 内置算子是指 S…...
Unity Avatar Cover System - 如何实现一个Avatar角色的智能掩体系统
文章目录简介变量说明实现动画准备动画状态机State 状态NoneStand To CoverIs CoveringCover To Stand高度适配高度检测脚部IK简介 本文介绍如何在Unity中实现一个Avatar角色的智能掩体系统,效果如图所示: 初版1.0.0代码已上传至SKFramework框架Package…...
steam/csgo搬砖项目到底真的假的?
搬砖是从国外steam市场置办游戏装备回来,在国内网易buff售卖,低买高卖,产生利润的一个项目。 但我真正上手后,才知道steam是面向全球的游戏平台,用户真的大的夸张!!市场非常巨大,一…...
【Python笔记20230307】
基础 编码、解码 str.encode(utf-8) # 编码 str.decode(utf-8) # 解码关键字 import keyword keyword.kwlist格式化输出 % 占位符:%s 字符串%d 整数%f 浮点数Hello, %s % world Hi, %s, you have $%d. % (Michael, 1000000) 占位符的修饰符 -左对齐 .小数点后位数 0左边补零…...
SBOM应该是软件供应链中的安全主食
当谈到软件材料清单(SBOM)时,通常的类比是食品包装上的成分列表,它让消费者知道他们将要吃的薯片中有什么。 美国机构有90天时间创建所有软件的清单 同样,SBOM是一个软件中组件的清单,在应用程序是来自多个来源的代码的集合的时…...
[计算机组成原理(唐朔飞 第2版)]第一章 计算机系统概论 第二章 计算机的发展及应用(学习复习笔记)
第1章 计算机系统概论 1.1 计算机系统简介 1.1.1 计算机的软硬件概念 计算机系统由“硬件”和“软件”两大部分组成。 硬件 是指计算机的实体部分,它由看得见摸得着的各种电子元器件,各类光、电、机设备的实物组成如主机、外部设备等 软件 软件看不见…...
Python的数据分析相关的框架
Python特别强大,也是一款可以实现可数据分析语言,它有很多开源的库和工具,可以帮助数据科学家处理和分析数据。 以下是一些常用的Python库和工具: NumPy:NumPy是一个Python库,用于处理大型多维数组和矩阵&…...
为什么会出现植物神经紊乱 总是检查不出来该怎么办
植物神经紊乱是一种很多人都害怕的疾病,你们知道是为什么吗? 植物神经紊乱是一种神经系统失调导致的多种症状的总称,这种疾病是由于社会因素所诱发的脏器功能的失调,是一种非常复杂的疾病。而这种疾病是可能会发生在任何年龄阶段的…...
宏任务和微任务
JavaScript 把异步任务又做了进一步的划分,异步任务又分为两类,分别是: ① 宏任务(macrotask) 异步 Ajax 请求setTimeout、setInterval文件操作其它宏任务 ② 微任务(microtask) Promise.then…...
使用WebSocket、SockJS、STOMP实现消息实时通讯功能
客户端 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head><title>websocket client</title><script src"http://cdn.bootcss.com/sockjs-client/1.1.1/sockjs.min.js"></script>…...
C++回顾(十一)—— 动态类型识别和抽象类
11.1 动态类识别 11.1.1 自定义类型 C中的多态根据实际的对象类型调用对应的函数 (1)可以在基类中定义虚函数返回具体的类型信息 (2)所有的派生类都必须实现类型相关的虚函数 (3)每个类中的类型虚函数都需…...
雷电模拟器安卓7以上+Charles抓包APP最新教程
一、工具准备: 证书安装工具全局代理工具下载: https://download.csdn.net/download/weixin_51111267/87536481 二、Charles设置 (一)电脑上证书安装 (二)安卓模拟器上系统证书安装(RooT权限打…...
vsvode 配置sftp,连接远程linux全过程
在本地安装sftp插件,配置参数https://blog.csdn.net/u011119817/article/details/106630599在linux机台安装vscode-service服务https://zhuanlan.zhihu.com/p/294933020连接超时,将配置文件添加超时时间遇到的错误处理:(272条消息) 【vscode插…...
C++类转换为蓝图、打印日志、蓝图关卡、删除C++文件
蓝图宏 UCLASS(Blueprintable)//c脚本可转换为蓝图 UPROPERTY(BlueprintReadWrite)//蓝图中可创建set,get节点 UFUNCTION(BlueprintCallable)//可创建函数节点 UPROPERTY(BlueprintReadWrite,Category”My Variables”)//节点进行分类打印日志 UE_LOG(LogTemp, Lo…...
elasticsearch高级篇:核心概念和实现原理
1.elasticsearch核心概念1.1 索引(index)一个索引就是一个拥有几分相似特征的文档的集合。比如说,你可以有一个客户数据的索引,另一个产品目录的索引,还有一个订单数据的索引。一个索引由一个名字来标识(必须全部是小写字母&#…...
部署安装Nginx服务实例
其他服务: 搭建zabbix4.0监控服务实例 普罗米修斯监控mysql数据库实战 Linux安装MySQL数据库步骤 一. Nginx概念介绍 1.介绍Nginx程序 Nginx (engine x) 是一款开源且高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。主要特点是占用…...
云原生架构设计原则及典型技术
云原生是面向云应用设计的一种思想理念,充分发挥云效能的最佳实践路径,帮助企业构建弹性可靠、松耦合、易管理可观测的应用系统,提升交付效率,降低运维复杂度。代表技术包括不可变基础设施、服务网格、声明式 API 及 Serverless 等…...
【Linux】-- 工具介绍 vim_gcc/g++_gdb
目录 Linux中的软件管理工具 – yum 在Linux下安装软件的方式 认识yum 查找软件包 安装 卸载 lrzsz.x86_64 rz sz Linux中的编辑器 – vim vim的基本概念 vim各模式切换 vim命令模式命令 vim底行模式命令 gcc / g gcc / g的作用 gcc / g语法 预处理 编译 汇…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...
AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机
这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机,因为在使用过程中发现 Airsim 对外部监控相机的描述模糊,而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置,最后在源码示例中找到了,所以感…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...
