Linux上实现分片压缩及解压分片zip压缩包 - 及zip、unzip命令详解

👨‍🎓博主简介

  🏅云计算领域优质创作者
  🏅华为云开发者社区专家博主
  🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
🐋 希望大家多多支持,我们一起进步!😄
🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏 ⭐️ 加关注+💗


文章目录

  • zip命令
    • 语法格式:
    • 常用参数:
    • 参考示例:
  • unzip命令
    • 语法格式:
    • 常用参数:
    • 参考示例:
  • 分片压缩文件夹为zip压缩包(推荐在windows进行分片压缩)
  • 合并分片的压缩包 并 解压分片zip压缩包

zip命令

zip命令的功能是用于压缩文件,解压命令为unzip。通过zip命令可以将文件打包成.zip格式的压缩包,里面会包含文件的名称、路径、创建时间、上次修改时间等等信息,与tar命令相似。

语法格式:

zip 参数 目标文件.zip 源文件或目录名

常用参数:

参数参数解析
-A自动解压缩文件
-b设置暂存文件的目录
-c添加注释信息到压缩文件
-d更新压缩包内文件
-F尝试修复损坏的压缩文件
-h显示帮助信息
-i仅压缩符合条件的文件
-k使用MS-DOS兼容格式
-l将“LF”替换成“LF+CR”字符
-L显示版本信息
-m压缩后删除源文件
-n不压缩具有特定字符串的文件
-q静默执行模式
-r递归处理所有子文件
-S包含系统和隐藏文件
-s指定分卷的大小
-t设置压缩时间为指定日期
-T检查压缩文件是否正确无误
-v显示执行过程详细信息
-V保留VMS操作系统的文件属性
-w在文件名称中加入版本编号
-X不保留过多的文件属性信息 -y 直接保存符号链接,而不是对应文件

参考示例:

  • 1、将指定目录及其内全部文件都打包成zip格式压缩包文件
zip -r cs.zip cszip 	# 压缩命令
-r 		# 递归处理所有子文件
cs.zip	# 要压缩的文件名
cs		# 要压缩的目录

在这里插入图片描述

  • 2、将当前工作目录内所有以.conf为后缀的文件打包
zip -r conf.zip /etc/*.conf

在这里插入图片描述

  • 3、更新压缩包文件中某个文件
zip -dv conf.zip /etc/locale.confzip			# 压缩命令
-dv			# d:更新压缩包内文件 v:查看详细信息
conf.zip			# 要压缩的文件名
/etc/locale.conf	#要更新的某个文件

在这里插入图片描述

  • 4、检查压缩文件是否正确无误
zip -T conf.zip

在这里插入图片描述

unzip命令

语法格式:

unzip [参数] 压缩包名

常用参数:

参数参数解析
-a对文本进行必要的字符转换
-b不要对文本进行任何字符转换
-c适当转换字符后输出解压缩结果
-C严格区分大小写
-d解压缩文件到指定目录中
-f强制覆盖已有文件
-j不处理压缩文件中原有的目录路径
-l显示压缩包内文件列表
-L将压缩包内文件名改为小写
-n解压缩时不覆盖已有文件
-p使用密码加密
-q静默执行模式
-t检查压缩包完整性
-v显示执行过程详细信息
-x跳过压缩包内的指定文件
-z显示压缩包内的备注文字

参考示例:

  • 1、解压zip包
unzip conf.zip 

在这里插入图片描述

  • 2、将压缩包文件解压到指定目录中
unzip conf.zip -d /home/lcy/aaa/

在这里插入图片描述

  • 3、测试压缩包文件是否完整,文件有无损坏

一般用于压缩完之后检测压缩包是否完整。

unzip -t conf.zip

在这里插入图片描述

分片压缩文件夹为zip压缩包(推荐在windows进行分片压缩)

先将目标压缩成单个的zip压缩包,再进行分片:

#先将目录打成压缩包
zip -r cs.zip cs/#检查压缩包是否完整(ok即可)
zip -T cs.zip#先看压缩包多大
du -sh cs.zip#然后在根据自己要打多大一个压缩包,分片压缩zip压缩包
zip -s 130m cs.zip --out cs-data.zip#就可以看到打的压缩包了, cs-data.z01 cs-data.z02 cs-data.zip

在这里插入图片描述

解析分片压缩zip压缩包命令:

-r:递归进入子目录

-T:检查压缩包是否完整

-s:指定分卷的最大容量,例如130m代表130MB、10g代表10GB

–out:输出的zip压缩包名

cs.zip:中间压缩包,分卷前的完整压缩包

使用以上命令进行分卷压缩时,会产生多个以数字排序的zip压缩包,如:

cs-data.z01
cs-data.z02

cs-data.zip

总体感觉,分片压缩zip压缩包不如在windows上执行,还是推荐windows上去执行分片压缩;

合并分片的压缩包 并 解压分片zip压缩包

可以先合并分片压缩包,再进行解压:

# 合并分片压缩包
cat cs-data.z* > cs-new.zip# 查看刚刚合并的压缩包大小
du -sh cs-new.zip# 检查压缩包完整性(ok即没问题)
unzip -t cs-new.zip# 解压zip压缩包
unzip cs-new.zip

解析合并压缩包命令:

>:重定向符

-t:检查压缩包完整性

cs-new.zip:分片压缩包合并后的完整压缩包名称

unzip:解压zip压缩包

小提示:
如果在合并完压缩包之后,检查压缩包完整性的时候发现有错;

那么可以去windows上进行分片压缩,在拿到linux上合并,linux上的分片压缩不是很好,可能在合并并解压的时候报错,所以分片压缩的话还是建议在windows上;
没有必须要求分片合并解压在linux上的话,最好也在windows上进行操作。

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

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

相关文章

visual studio 2022.NET Core 3.1 未显示在目标框架下拉列表中

问题描述 在Visual Studio 2022我已经安装了 .NET core 3.1 并验证可以运行 .NET core 3.1 应用程序,但当创建一个新项目时,目标框架的下拉列表只允许 .NET 6.0和7.0。而我在之前用的 Visual Studio 2019,可以正确地添加 .NET 核心项目。 …

GNS3 在 Linux 上的安装指南

文章目录 GNS3 在 Linux 上的安装指南1. 基于 Ubuntu 的发行版安装 GNS32. 基于 Debian 的安装3. 基于 ArchLinux 的安装4. 从 Pypi 安装 GNS35. 启动 GNS3 服务端GNS3 在 Linux 上的安装指南 大家好,今天我们来聊聊如何在 Linux 上安装 GNS3。GNS3 是一个非常受欢迎的网络模…

【BUG事务内消息发送】事务内消息发送,事务还未结束,消息发送已被消费,查无数据怎么解决?

问题描述 在一个事务内完成插入操作,通过MQ异步通知其他微服务进行事件处理。 由于是在事务内发送,其他服务消费消息,查询数据时还不存在如何解决呢? 解决方案 通过spring-tx包的TransactionSynchronizationManager事务管理器解…

DC电源模块不同的尺寸可以适应实际应用场景

BOSHIDA DC电源模块不同的尺寸可以适应实际应用场景 DC电源模块是现代电子设备的必备部件之一,其可提供稳定的直流电源,保证电子设备正常运行。DC电源模块尺寸的选择直接影响到其适应的应用场景及其性能表现。本文将从尺寸方面分析DC电源模块的适应性&a…

2023Web自动化测试的技术框架和工具有哪些?

Web 自动化测试是一种自动化测试方式,旨在模拟人工操作对 Web 应用程序进行测试。这种测试方式可以提高测试效率和测试精度,减少人工测试的工作量和测试成本。在 Web 自动化测试中,技术框架和工具起着至关重要的作用。本文将介绍几种常见的 W…

使用Angular和MongoDB来构建具有登录功能的博客应用程序

Angular 是一个一站式框架,用于使用相同的可重用代码创建移动和 Web 应用程序。使用 Angular,您可以将整个应用程序划分为可重用的组件,从而更轻松地维护和重用代码。 在本教程系列中,您将学习如何开始使用 Angular 和 MongoDB 作…

简单工厂模式概述和使用

目录 一、简单工厂模式简介1. 定义2. 使用动机 二、简单工厂模式结构1.模式结构2. 时序图 三、简单工厂的使用实例四、简单工厂模式优缺点五、简单工厂模式在Java中的应用 一、简单工厂模式简介 原文链接 1. 定义 简单工厂模式(Simple Factory Pattern):又称为静…

验收测试怎么做?需要怎么配合

验收测试的流程,是验证系统是否达到了用户需求规格说明书(可能包括项目或产品验收准则)中的要求,测试试图尽可能地发现软件中存留的缺陷,从而为软件进一步改善提供帮助,并保证系统或软件产品Z终被用户接受。…

液体神经网络LLN:通过动态信息流彻底改变人工智能

巴乌米克泰吉 一、说明 在在人工智能领域,神经网络已被证明是解决复杂问题的非常强大的工具。多年来,研究人员不断寻求创新方法来提高其性能并扩展其能力。其中一种方法是液体神经网络(LNN)的概念,这是一个利用动态计算…

IET独立出版 | EI检索 | 2023年第三届机械、航空航天与汽车工程国际会议

会议简介 Brief Introduction 2023年第三届机械、航空航天与汽车工程国际会议(CMAAE 2023) 会议时间:2023年12月8 -10日 召开地点:中国南京 大会官网:www.cmaae.org 航天是当今世界最具挑战性和广泛带动性的高技术领域…

时序预测 | MATLAB实现基于PSO-LSTM、LSTM时间序列预测对比

时序预测 | MATLAB实现基于PSO-LSTM、LSTM时间序列预测对比 目录 时序预测 | MATLAB实现基于PSO-LSTM、LSTM时间序列预测对比效果一览基本描述程序设计参考资料 效果一览 基本描述 MATLAB实现基于PSO-LSTM、LSTM时间序列预测。 1.Matlab实现PSO-LSTM和LSTM神经网络时间序列预测…

C#搭建WebSocket服务实现通讯

在学习使用websocket之前我们先了解一下websocket: WebSocket是一种在单个TCP连接上进行全双工通信的通信协议。与HTTP协议不同,它允许服务器主动向客户端发送数据,而不需要客户端明确地请求。这使得WebSocket非常适合需要实时或持续通信的应…