当前位置: 首页 > news >正文

Linux压缩、解压缩、查看压缩内容详解使用(tar、gzip、bzip2、xz、jar、war、aar)

在Linux环境中,你可以使用各种命令来压缩、解压缩和查看不同类型的压缩包。以下是常用的命令和操作说明,包括targzipbzip2xzjarwaraar等类型的包文件。

1. tar命令:压缩、解压、查看tar包

压缩:
tar -cvf archive.tar file1 file2 dir/
  • -c: 创建一个新归档文件。
  • -v: 显示操作过程。
  • -f: 指定归档文件名称。
压缩为gzip格式:
tar -czvf archive.tar.gz file1 file2 dir/
  • -z: 使用gzip进行压缩。
解压:
tar -xvf archive.tar
解压gzip格式:
tar -xzvf archive.tar.gz
查看tar包内容:
tar -tvf archive.tar
查看tar.gz包内容:
tar -tzvf archive.tar.gz

2. gzip命令:压缩和解压.gz文件

压缩:
gzip filename

生成filename.gz文件。

解压:
gzip -d filename.gz

解压后的文件是原始文件filename

查看内容:
zcat filename.gz

3. bzip2命令:压缩和解压.bz2文件

压缩:
bzip2 filename

生成filename.bz2文件。

解压:
bzip2 -d filename.bz2

或者:

bunzip2 filename.bz2
查看内容:
bzcat filename.bz2

4. xz命令:压缩和解压.xz文件

压缩:
xz filename

生成filename.xz文件。

解压:
xz -d filename.xz

或者:

unxz filename.xz
查看内容:
xzcat filename.xz

5. jarwaraar文件操作

这些文件都是基于ZIP格式的Java归档文件,可以使用jarunzip命令。

解压:
unzip filename.jar
unzip filename.war
unzip filename.aar
查看内容:
unzip -l filename.jar
unzip -l filename.war
unzip -l filename.aar

在 Linux 下使用 jar 命令可以不解压直接查看 .jar.war.aar 压缩包的内容。jar 命令是 Java 自带的工具,专门用于处理 Java 压缩包格式(.jar.war.ear 等)。具体用法如下:

6. 查看 .jar 文件内容

使用 jar -tvf 命令查看 .jar 文件中的内容:

jar -tvf file.jar
  • -t:列出压缩包中的文件
  • -v:显示详细信息(文件权限、大小、日期等)
  • -f:指定文件

示例

jar -tvf myapp.jar

输出类似:

     0 Tue Jan 10 10:00:00 UTC 2023 META-INF/456 Tue Jan 10 10:00:00 UTC 2023 META-INF/MANIFEST.MF56789 Tue Jan 10 10:00:00 UTC 2023 com/test/Main.class12345 Tue Jan 10 10:00:00 UTC 2023 com/test/Utils.class

7. 查看 .war 文件内容

.war 文件是 Web 应用程序的归档文件,本质上也是一种 .jar 文件。因此,可以使用相同的 jar -tvf 命令查看 .war 文件的内容:

jar -tvf file.war

示例

jar -tvf myapp.war

输出类似:

     0 Tue Jan 10 10:00:00 UTC 2023 WEB-INF/456 Tue Jan 10 10:00:00 UTC 2023 WEB-INF/web.xml56789 Tue Jan 10 10:00:00 UTC 2023 WEB-INF/classes/com/test/Main.class12345 Tue Jan 10 10:00:00 UTC 2023 WEB-INF/classes/com/test/Utils.class

8. 查看 .aar 文件内容

.aar 文件是 Android 库的归档文件,也是基于 .jar 格式的压缩包,可以同样使用 jar -tvf 命令查看内容:

jar -tvf file.aar

示例

jar -tvf mylib.aar

输出类似:

     0 Tue Jan 10 10:00:00 UTC 2023 META-INF/456 Tue Jan 10 10:00:00 UTC 2023 AndroidManifest.xml56789 Tue Jan 10 10:00:00 UTC 2023 classes.jar12345 Tue Jan 10 10:00:00 UTC 2023 res/drawable/icon.png

使用 jar 命令可以方便地在不解压的情况下查看这些压缩包的内容。

示例:

  • 查看.tar.gz压缩包:

    tar -tzvf archive.tar.gz
    
  • 解压.bz2文件:

    bunzip2 filename.bz2
    
  • 查看.jar文件内容:

    unzip -l file.jar
    

总结:

  • 压缩:使用targzipbzip2xz等工具来压缩文件或目录。
  • 解压:对应的解压命令为targzip -dbunzip2unxz
  • 查看内容:使用tarzcatbzcatxzcatunzip等命令不解压查看压缩包内容。
  • 查看 .jar 文件jar -tvf file.jar
  • 查看 .war 文件jar -tvf file.war
  • 查看 .aar 文件jar -tvf file.aar

相关文章:

Linux压缩、解压缩、查看压缩内容详解使用(tar、gzip、bzip2、xz、jar、war、aar)

在Linux环境中,你可以使用各种命令来压缩、解压缩和查看不同类型的压缩包。以下是常用的命令和操作说明,包括tar、gzip、bzip2、xz、jar、war、aar等类型的包文件。 1. tar命令:压缩、解压、查看tar包 压缩: tar -cvf archive.…...

StreamReader 和 StreamWriter提供自动处理字符编码的功能

FileStream、StreamReader 和 StreamWriter 都用于文件操作,但它们的设计目标和使用方式有所不同。下面是它们之间的主要差异以及如何结合使用的说明: 1. FileStream 用途:提供对文件的字节流访问,用于读写二进制数据。特点&…...

Gitlab备份、迁移、恢复和升级(Gitlab Backup, migration, recovery, and upgrade)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…...

MySQL:INSERT command denied to user

异常: INSERT command denied to user 解决办法: 请检查一下 MySQL 帐号是否有相应的权限...

【Android安全】Ubuntu 16.04安装GDB和GEF

1. 安装GDB sudo apt install gdb-multiarch 2. 安装GEF(GDB Enhanced Features) 官网地址:https://github.com/hugsy/gef 2.1 安装2021.10版本 但是在Ubuntu 16.04上,bash -c "$(curl -fsSL https://gef.blah.cat/sh)"等命令不好使&…...

ISO 21434与网络安全管理系统(CSMS)的协同作用

ISO/SAE 21434与CSMS(网络安全管理系统)之间的关系主要体现在以下几个方面: 提供指导框架:ISO/SAE 21434《道路车辆—网络安全工程》是一项国际标准,它为汽车行业提供了实施网络安全管理系统的国际认可的方法和最佳实…...

Vue 67 vuex 四个map方法的使用

mapState方法:用于帮助我们映射state中的数据为计算属性 computed: {//借助mapState生成计算属性:sum、school、subject(对象写法)...mapState({sum:sum,school:school,subject:subject}),//借助mapState生成计算属性:…...

Unity自带脚本之GameObject脚本

目录 GameObject基本成员变量 静态方法 创建自带几何体 1.查找对象 通过tag来查找对象 2查找多个对象 实例化对象(克隆对象)的方法 删除对象的方法 过场景不移除 Unity中的Object和C#中的万物之父的区别 成员方法 创建空物体 为对象 动态添加…...

软件测试面试题-自测

一、测试流程 1.项目测试流程你是怎么开展的? ①首先,需求分析阶段,分析需求点,需求确定以后进入测试计划阶段,参考需求规格说明书进行测试计划编写 ②接着,进入测试设计阶段,依据需求文档及原…...

深度学习-神经网络

文章目录 一、基本组成单元:神经元二、神经网络层三、偏置与权重四、激活函数1.激活函数的作用2.常见的激活函数1).Sigmoid2).Tanh函数3).ReLU函数 五、优点与缺点六、总结 神经网络(Neural Network, NN)是一种模拟人类大脑工作方式的计算模型…...

Redis - 集群篇 - 集群模式

面试的时候被人问到集群的问题,搬砖仔哪懂这么多,继续整理一下知识点 Redis 集群模式 Redis集群就是将多个Redis节点连接在一起, 让Redis在不同的节点上同时提供服务。 Redis集群主要有三种模式: 主从复制模式(mast…...

Robot Operating System——线速度和角速度

大纲 应用场景1. 移动机器人控制场景描述具体应用 2. 无人机控制场景描述具体应用 3. 机械臂运动控制场景描述具体应用 4. 自动驾驶车辆控制场景描述具体应用 5. 机器人仿真场景描述具体应用 6. 机器人传感器数据处理场景描述具体应用 定义字段解释 案例 geometry_msgs::msg::T…...

量化投资策略_因子打分选股的案例实现

一:因子打分选股的介绍 因子打分选股是一种量化投资策略,它通过选取多个与股票收益率相关的因子,对股票进行综合评分,然后根据评分来选择股票构建投资组合。以下是构建多因子打分选股模型的一般步骤: 数据预处理&…...

架构师知识梳理(七):软件工程-工程管理与开发模型

软件工程概述 软件开发生命周期 软件定义时期:包括可行性研究和详细需求分析过程,任务是确定软件开发工程必须完成的总目标,具体可分成问题定义、可行性研究、需求分析等。软件开发时期:就是软件的设计与实现,可分成…...

bp的模块被隐藏了

看我们现在没有代理那个模块了 我们点击查看 这里有被我们隐藏的模块,比如代理等,把前面的眼睛点一下 这个模块就出来了,如果想把他固定在任务栏里 拖动这个位置 就好了,如果有其他问题可以留言,看到可进我的努力给你…...

C++学习笔记(21)

243、条件变量-生产消费者模型 条件变量是一种线程同步机制。当条件不满足时,相关线程被一直阻塞,直到某种条件出现,这些线 程才会被唤醒。 C11 的条件变量提供了两个类: condition_variable:只支持与普通 mutex 搭配&…...

Ubuntu系统入门指南:常用命令详解

Ubuntu系统入门指南:常用命令详解 引言 Ubuntu是一个基于Linux内核的开源操作系统,由Canonical公司和社区共同开发和维护。它以易用性、稳定性和广泛的软件支持而著称,广泛应用于个人电脑、服务器和云计算环境。对于新手来说,掌…...

keep-alive缓存不了iframe

最近做了个项目&#xff0c;其中有个页面是由 iframe 嵌套了一个另外的页面&#xff0c;在运行的过程中发现 KeepAlive 并不生效&#xff0c;每次切换路由都会触发 iframe 页面的重新渲染&#xff0c;代码如下&#xff1a; <router-view v-slot"{ Component }">…...

Gradio快速部署构建AIGC的web应用 ,python

Gradio快速部署构建AIGC的web应用 &#xff0c;python Gradio开源项目链接&#xff1a; https://github.com/gradio-app/gradiohttps://github.com/gradio-app/gradio &#xff08;1&#xff09;python的pip安装&#xff1a; pip install gradio &#xff08;2&#xff09;写…...

《职教论坛》

《职教论坛》投稿须知 《职教论坛》为全国中文核心期刊。为进一步提高期刊的规范化和标准化&#xff0c;也可使作者投搞有规可循&#xff0c;特对来稿提出如下要求&#xff1a; 一、稿件应有创新内容&#xff0c;应观点明确、资料准确、结构严谨、表述清楚、文字简明&#xff…...

大话软工笔记—需求分析概述

需求分析&#xff0c;就是要对需求调研收集到的资料信息逐个地进行拆分、研究&#xff0c;从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要&#xff0c;后续设计的依据主要来自于需求分析的成果&#xff0c;包括: 项目的目的…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

uniapp 字符包含的相关方法

在uniapp中&#xff0c;如果你想检查一个字符串是否包含另一个子字符串&#xff0c;你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的&#xff0c;但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...

Bean 作用域有哪些?如何答出技术深度?

导语&#xff1a; Spring 面试绕不开 Bean 的作用域问题&#xff0c;这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开&#xff0c;结合典型面试题及实战场景&#xff0c;帮你厘清重点&#xff0c;打破模板式回答&#xff0c…...

数据库——redis

一、Redis 介绍 1. 概述 Redis&#xff08;Remote Dictionary Server&#xff09;是一个开源的、高性能的内存键值数据库系统&#xff0c;具有以下核心特点&#xff1a; 内存存储架构&#xff1a;数据主要存储在内存中&#xff0c;提供微秒级的读写响应 多数据结构支持&…...

拟合问题处理

在机器学习中&#xff0c;核心任务通常围绕模型训练和性能提升展开&#xff0c;但你提到的 “优化训练数据解决过拟合” 和 “提升泛化性能解决欠拟合” 需要结合更准确的概念进行梳理。以下是对机器学习核心任务的系统复习和修正&#xff1a; 一、机器学习的核心任务框架 机…...