linux中相关压缩文件的便捷方式

1.压缩解压缩命令

tar命令

tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。 一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件

常用参数
选项功能
-c创建一个新tar文件
-v显示运行过程的信息
-f指定文件名
-z调用gzip压缩命令进行压缩/解压缩
-t查看压缩文件的内容
-x解压tar文件

1.1 tar压缩打包

打包文件
        tar –cvf xxx.tar 目录名/文件1 文件2

示例:

   tar -cvf mycvfab.tar a.txt b.txt

打包并且压缩
tar –zcvf xxx.tar.gz 目录名/文件1 文件2

示例:

tar -zcvf houma.tar.gz houge.txt bailongma.txt 

1.2 tar解压

  • 解压到当前目录
    tar -zxvf houma.tar.gz
  • 解压到指定目录

    解压到usr目录下的aa目录中

    tar -zxvf xxx.tar.gz -C /usr/aaa

     

1.3常见的便捷压缩方式

        1.3.1压缩多个目录

如果你只想压缩多个目录,而不需要包括目录中的所有文件,你可以使用 `tar` 命令来将这些目录打包到一个归档文件中,然后再使用 `gzip` 命令进行压缩。以下是一个高效的方式:


tar -czvf archive.tar.gz directory1 directory2 directory3
 

这个命令将会创建一个名为 `archive.tar.gz` 的压缩包,其中包含了 `directory1`、`directory2` 和 `directory3` 这三个目录及其内容。

如果你想要压缩目录的内容(包括子目录和文件),可以使用 `-C` 选项:


tar -czvf archive.tar.gz -C /path/to/directory1 -C /path/to/directory2
 

这样会将 `directory1` 和 `directory2` 目录及其内容压缩到 `archive.tar.gz` 文件中。

另外,如果你想要在归档文件中保留目录结构(即在解压缩时保持目录层次结构),你可以使用相对路径:


tar -czvf archive.tar.gz -C /path/to/parent_directory directory1 directory2
 

这个命令将会在 `archive.tar.gz` 文件中保留 `directory1` 和 `directory2` 目录,其路径相对于 `/path/to/parent_directory`。

总之,`tar` 命令可以灵活地打包指定的目录或文件,可以根据需要调整命令参数来达到想要的压缩效果。

        1.3.2压缩某个目录下的多个文件

如果你只想压缩某个目录下的多个文件,而不需要压缩整个目录及其子目录,你可以直接在 `tar` 命令中列出这些文件的路径。以下是一个示例:


tar -czvf archive.tar.gz /path/to/directory/file1.txt /path/to/directory/file2.txt /path/to/directory/file3.txt
 

这个命令将创建一个名为 `archive.tar.gz` 的压缩包,其中包含了 `/path/to/directory/` 目录下的 `file1.txt`、`file2.txt` 和 `file3.txt` 这三个文件。

1.3.3压缩文件夹命名有规律的

如果这些文件夹命名有规律,例如它们的命名遵循了某种模式,你可以使用通配符来选择匹配的文件。例如,如果你想要压缩以 `log` 开头的所有文件,你可以这样做:


tar -czvf archive.tar.gz /path/to/directory/log*.txt
 

这将压缩 `/path/to/directory/` 目录下所有以 `log` 开头并以 `.txt` 结尾的文件。

如果你的文件名有规律,但是无法通过通配符匹配,你可能需要编写一个脚本来生成要压缩的文件列表,然后将其传递给 `tar` 命令。例如,你可以使用 `find` 命令来查找符合特定条件的文件,并将其输出传递给 `tar` 命令:


find /path/to/directory/ -type f -name "pattern*" -exec tar -rvf archive.tar {} \;
 

这个命令将查找 `/path/to/directory/` 目录下所有以 `pattern` 开头的文件,并将它们添加到名为 `archive.tar` 的归档文件中。

举例:

如果想要压缩某个月份的日志如下:

tar -zcvf txService.log.2024-04.16-31.tar.gz txService.log.2024-03-{16..31}

这个命令是使用 tar 命令将一组特定的日志文件压缩为一个压缩包,并使用 gzip 进行压缩。让我们分解一下这个命令的各个部分:

  • tar: 这个命令用于创建和解压缩归档文件(也称为 "tarballs")。它可以将多个文件和目录组合成一个归档文件。

  • -z: 使用 gzip 压缩归档文件。这意味着生成的文件会被压缩,通常扩展名为 .tar.gz

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

  • -v: 可选参数,表示显示详细信息。在处理归档文件时,这个选项会输出处理的文件名。

  • -f: 指定输出文件名。

  • txService.log.2024-04.16-31.tar.gz: 这是生成的压缩包的文件名。在这个例子中,压缩包的名称暗示它包含了从2024年4月16日到31日之间的日志。

  • txService.log.2024-03-{16..31}: 这是你要添加到压缩包中的文件。大括号 {16..31} 是一个 "Brace Expansion" 语法,它会生成一系列字符串,在这个例子中是从16到31之间的数字。这意味着这个命令会尝试添加与 txService.log.2024-03-16, txService.log.2024-03-17,...,txService.log.2024-03-31 这些文件名匹配的文件。

所以,整个命令的作用是将一组在2024年3月16日至31日之间的 txService.log 文件压缩到一个名为 txService.log.2024-04.16-31.tar.gz 的压缩包中,并且使用 gzip 压缩。

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

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

相关文章

MATLAB函数fir1的C语言移值

要移值的matlab函数: h3 = fir1(16,[0.25 0.50]); C语言版本 #include <iostream> #include <cmath>#define PI acos(-1)double sincEasy(double *x, int len, int index) {double temp = PI * x[index];if (temp == 0) {return 1.0; // sinc(0) = 1}return s…

【前端】HTML基础(1)

文章目录 前言一、什么是前端二、HTML基础1、 HTML结构1.1 什么是HTML页面1.2 认识HTML标签1.3 HTML文件基本结构1.3 标签层次结构1.4 创建html文件1.5 快速生成代码框架 三、Emmet快捷键 前言 这篇博客仅仅是对HTML的基本结构进行了一些说明&#xff0c;关于HTML的更多讲解以及…

华为机考入门python3--(23)牛客23- 删除字符串中出现次数最少的字符

分类&#xff1a;字符串 知识点&#xff1a; 访问字典中keychar的值&#xff0c;不存在则返回0 my_dict.get(char, 0) 字典的所有值 my_dict.value() 列表中的最小值 min(my_list) 题目来自【牛客】 import sysdef delete_min_freq_char(s):# 计算字母出现的频次…

【linux】dmesg工具

dmesg介绍 dmesg工具用途&#xff1a; dmesg - print or control the kernel ring buffer kernel ring buffer, 内核环形缓冲区&#xff0c;也叫环形队列&#xff0c;Linux内核日志就存储在一个环形队列中&#xff0c;环形队列满的时候&#xff0c;新的消息会覆盖掉旧的消息。…

《十八》QThread多线程组件

本章将重点介绍如何运用QThread组件实现多线程功能。 多线程技术在程序开发中尤为常用&#xff0c;Qt框架中提供了QThread库来实现多线程功能。当你需要使用QThread时&#xff0c;需包含QThread模块&#xff0c;以下是QThread类的一些主要成员函数和槽函数。 成员函数/槽函数 …

02-Fortran基础--Fortran操作符与控制结构

02-Fortran基础--Fortran操作符与控制结构 0 引言1 操作符1.1 数学运算符1.2 逻辑运算符1.3 关系运算符 2 控制流程2.1 条件结构2.2 循环结构2.3 分支结构 0 引言 运算符和控制流程对编程语言是必须的,Fortran的操作符和控制流程涉及到各种数学运算符、逻辑运算符以及控制结构。…

一文了解栈

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、栈是什么&#xff1f;二、栈的实现思路1.顺序表实现2.单链表实现3.双向链表实现 三、接口函数的实现1.栈的定义2.栈的初始化3.栈的销毁4.入栈5.出栈6.返回栈…

调用nvprof报错: No kernels were profiled. No API activities were profiled.

调用nvprof报错 1 nvprof介绍 nvprof 是 NVIDIA 提供的一款用于分析 CUDA 应用程序性能的命令行性能分析器。CUDA 是一种并行计算平台和编程模型&#xff0c;允许开发人员利用 NVIDIA GPU 进行通用处理。 nvprof 帮助开发人员分析其 CUDA 应用程序的性能&#xff0c;提供各种…

C++继承 - 下

目录 1. 继承和友元 2. 继承与静态成员 3. 菱形继承以及菱形虚拟继承 3.1. 单继承 3.2. 多继承 3.3. 菱形继承 3.4. 菱形虚拟继承 3.5. 菱形继承的底层细节 3.6. 菱形虚拟继承的底层细节 3.7. 虚拟继承 4. 继承的总结 5. 相关继承练习题 5.1. 如何定义一个无法被继…

【Vue3】Ref与Reactive

3.1【ref 创建&#xff1a;基本类型的响应式数据】 作用&#xff1a;定义响应式变量。语法&#xff1a;let xxx ref(初始值)。返回值&#xff1a;一个RefImpl的实例对象&#xff0c;简称ref对象或ref&#xff0c;ref对象的value属性是响应式的。注意点&#xff1a; JS中操作数…

Windows环境编译 VVenC 源码生成 Visual Studio 工程

VVenC介绍 Fraunhofer通用视频编码器(VVenC)的开发是为了提供一种公开可用的、快速和有效的VVC编码器实现。VVenC软件基于VTM&#xff0c;其优化包括软件重新设计以减轻性能瓶颈、广泛的SIMD优化、改进的编码器搜索算法和基本的多线程支持以利用并行。此外&#xff0c;VVenC支…

加索引导致表被锁的原因及处理方法

目录 为什么加索引会导致表被锁&#xff1f;什么情况下会被锁&#xff1f;要注意什么&#xff1f;被锁怎么处理&#xff1f;MySQL查询被锁的表查询被锁的库 PostgreSQL查询被锁的表查询被锁的库 Oracle查询被锁的表查询被锁的库 SQL Server查询被锁的表查询被锁的库 结语 在数据…

Mybatis plus update PG json 类型 报错解决

Mybatis plus update PG json 类型 报错解决 1. 定义的PG数据库对象2. 自定义 JSON Handler3. update Wrapper4. update 报错信息4.1 No hstore extension installed.4.2 Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for …

git commit 提交报错pre-commit hook failed (add --no-verify to bypass) 解决方法,亲测有效

问题截图 今天在执行 git commit 命令时报错&#xff1a;pre-commit hook failed (add --no-verify to bypass) 解决 参考文章&#xff1a;git commit报错&#xff1a;pre-commit hook failed的解决方法 具体原理什么的就不解释了&#xff0c;可以看看上面的参考文章 解决方…

TXT文本高效批量编辑,支持批量将每个单号间的空白行进行删除掉,文本内容管理更方便

TXT文本是一种常用的存储快递单号的数据格式。然而&#xff0c;当TXT文本中存在大量的空白行时&#xff0c;不仅浪费了存储空间&#xff0c;还可能导致批量编辑和查询变得低效。为了解决这一问题&#xff0c;我们推出了高效的TXT文本批量编辑功能&#xff0c;支持批量删除单号间…

PTQ4SAM、Mamba-Attention、AniTalker、IceFormer、U-DiTs、CogDPM

本文首发于公众号&#xff1a;机器感知 PTQ4SAM、Mamba-Attention、AniTalker、IceFormer、U-DiTs、CogDPM PTQ4SAM: Post-Training Quantization for Segment Anything Segment Anything Model (SAM) has achieved impressive performance in many computer vision tasks. Ho…

Day 24 数据库管理及数据类型

数据库管理及数据类型 一&#xff1a;数据类型 1.数值类型 整数类型 ​ 整数类型&#xff1a;TINYINT SMALLINT MEDIUMINT INT BIGINT ​ 作用&#xff1a;用于存储用户的年龄、游戏的Level、经验值等 浮点数类型 ​ 浮点数类型&#xff1a;FLOAT DOUBLE ​ 作用&#xf…

Docker镜像仓库-在私有镜像仓库推送或拉取镜像

推送镜像到私有仓库&#xff0c;要先让镜像打包 前缀为私有仓库地址的名字&#xff1a; 这里也是打包成功了:docker images 可以查看到 push推送镜像到镜像仓库: docker push 192.168.221.129:8080/nginx:1.0推送成功后在主机访问镜像仓库可以看到 这里已经有个镜像了。而且可…

Lua(0)环境搭建与基础代码

Lua环境搭建 1、下载 lua for window https://github.com/rjpcomputing/luaforwindows Download-->LuaForWindows_v5.1.5-52.exe 安装完成后&#xff0c;cmd--->lua&#xff0c;显示lua版本则成功 2、Sublime Text https://www.sublimetext.com/download 参考课程&a…

CyberDemo解读

CyberDemo: Augmenting Simulated Human Demonstration for Real-World Dexterous Manipulation解读 摘要1. 简介2. Related Work2.1 Data for Learning Robot Manipulation2.2 机器人的预训练视觉表征2.3 Sim2Real Transfer 3. CyberDemo3.1 收集人体遥操作数据3.2 在模拟器中…