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

详解Linux命令--zip/unzip

Linux中的zip和unzip命令:详尽指南与示例

zipunzip 命令是Linux中最常用的命令之一,用于压缩和解压缩文件。本文将详细介绍zipunzip命令的用法,并给出具体的示例。

1. zip命令

zip 命令用于将文件压缩成.zip格式的存档文件。

1.1 基本语法

zip的基本语法如下:

zip [options] archive.zip file...
  • [options]:可选参数,用于控制压缩行为。
  • archive.zip:要创建的存档文件名。
  • file...:要压缩的文件名。

1.2 常用选项

1.2.1 -r

递归压缩目录及其子目录。

示例:

递归压缩目录mydir及其子目录到archive.zip

zip -r archive.zip mydir
1.2.2 -j

仅压缩指定的文件,不包括目录结构。

示例:

仅压缩mydir目录下的文件,不包括目录结构:

zip -jr archive.zip mydir
1.2.3 -m

压缩后删除原文件。

示例:

压缩文件file1.txt后删除原文件:

zip -m archive.zip file1.txt
1.2.4 -l

列出压缩文件的信息。

示例:

列出archive.zip中的文件信息:

zip -l archive.zip
1.2.5 -v

详细模式,显示压缩过程。

示例:

详细模式压缩文件file1.txtarchive.zip

zip -v archive.zip file1.txt
1.2.6 -d

从压缩文件中删除指定的文件。

示例:

archive.zip中删除file1.txt

zip -d archive.zip file1.txt
1.2.7 -u

更新压缩文件中的文件。

示例:

更新archive.zip中的file1.txt

zip -u archive.zip file1.txt
1.2.8 -9

使用最大压缩级别。

示例:

使用最大压缩级别压缩文件file1.txtarchive.zip

zip -9 archive.zip file1.txt
1.2.9 -q

静默模式,不显示压缩过程。

示例:

静默模式压缩文件file1.txtarchive.zip

zip -q archive.zip file1.txt
1.2.10 -A

支持Unicode文件名。

示例:

支持Unicode文件名压缩文件file1.txtarchive.zip

zip -A archive.zip file1.txt
1.2.11 --version

显示版本信息。

示例:

显示zip命令的版本信息:

zip --version
1.2.12 --help

显示帮助信息。

示例:

显示zip命令的帮助信息:

zip --help

1.3 实战案例

1.3.1 压缩单个文件

压缩文件file1.txtarchive.zip

zip archive.zip file1.txt
1.3.2 递归压缩目录

递归压缩目录mydir及其子目录到archive.zip

zip -r archive.zip mydir
1.3.3 仅压缩指定的文件,不包括目录结构

仅压缩mydir目录下的文件,不包括目录结构:

zip -jr archive.zip mydir
1.3.4 压缩后删除原文件

压缩文件file1.txt后删除原文件:

zip -m archive.zip file1.txt
1.3.5 列出压缩文件的信息

列出archive.zip中的文件信息:

zip -l archive.zip
1.3.6 详细模式压缩文件

详细模式压缩文件file1.txtarchive.zip

zip -v archive.zip file1.txt
1.3.7 从压缩文件中删除指定的文件

archive.zip中删除file1.txt

zip -d archive.zip file1.txt
1.3.8 更新压缩文件中的文件

更新archive.zip中的file1.txt

zip -u archive.zip file1.txt
1.3.9 使用最大压缩级别压缩文件

使用最大压缩级别压缩文件file1.txtarchive.zip

zip -9 archive.zip file1.txt
1.3.10 静默模式压缩文件

静默模式压缩文件file1.txtarchive.zip

zip -q archive.zip file1.txt
1.3.11 支持Unicode文件名压缩文件

支持Unicode文件名压缩文件file1.txtarchive.zip

zip -A archive.zip file1.txt

2. unzip命令

unzip 命令用于解压.zip格式的存档文件。

2.1 基本语法

unzip的基本语法如下:

unzip [options] archive.zip
  • [options]:可选参数,用于控制解压行为。
  • archive.zip:要解压的存档文件名。

2.2 常用选项

2.2.1 -l

列出压缩文件的内容。

示例:

列出archive.zip中的文件内容:

unzip -l archive.zip
2.2.2 -d DIRECTORY

将文件解压到指定目录。

示例:

archive.zip解压到/path/to/destination目录:

unzip -d /path/to/destination archive.zip
2.2.3 -n

不覆盖已有的文件。

示例:

解压archive.zip时不覆盖已有的文件:

unzip -n archive.zip
2.2.4 -o

自动覆盖已有的文件。

示例:

解压archive.zip时自动覆盖已有的文件:

unzip -o archive.zip
2.2.5 -q

静默模式,不显示解压过程。

示例:

静默模式解压archive.zip

unzip -q archive.zip
2.2.6 -v

详细模式,显示解压过程。

示例:

详细模式解压archive.zip

unzip -v archive.zip
2.2.7 -x PATTERN

排除符合模式的文件。

示例:

解压archive.zip时排除所有以temp开头的文件:

unzip -x temp* archive.zip
2.2.8 -t

测试压缩文件的完整性。

示例:

测试archive.zip的完整性:

unzip -t archive.zip
2.2.9 -p

将文件打印到标准输出。

示例:

archive.zip中的file1.txt打印到标准输出:

unzip -p archive.zip file1.txt
2.2.10 --version

显示版本信息。

示例:

显示unzip命令的版本信息:

unzip --version
2.2.11 --help

显示帮助信息。

示例:

显示unzip命令的帮助信息:

unzip --help

2.3 实战案例

2.3.1 列出压缩文件的内容

列出archive.zip中的文件内容:

unzip -l archive.zip
2.3.2 将文件解压到指定目录

archive.zip解压到/path/to/destination目录:

unzip -d /path/to/destination archive.zip
2.3.3 不覆盖已有的文件

解压archive.zip时不覆盖已有的文件:

unzip -n archive.zip
2.3.4 自动覆盖已有的文件

解压archive.zip时自动覆盖已有的文件:

unzip -o archive.zip
2.3.5 静默模式解压文件

静默模式解压archive.zip

unzip -q archive.zip
2.3.6 详细模式解压文件

详细模式解压archive.zip

unzip -v archive.zip
2.3.7 排除符合模式的文件

解压archive.zip时排除所有以temp开头的文件:

unzip -x temp* archive.zip
2.3.8 测试压缩文件的完整性

测试archive.zip的完整性:

unzip -t archive.zip
2.3.9 将文件打印到标准输出

archive.zip中的file1.txt打印到标准输出:

unzip -p archive.zip file1.txt

请注意,某些命令的选项和语法可能会因不同的Linux发行版和版本而略有不同,请根据实际情况调整命令的具体细节。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 谷粒商城实战笔记-175~177-商城业务-检索服务-检索查询接口开发
  • Unity动画模块 之 简单创建一个序列帧动画
  • 6 款最佳付费和免费 iPhone 解锁应用和软件
  • [FBCTF2019]RCEService1
  • Redis7-分布式锁
  • 嵌入式学习Day30---Linux软件编程---进程间的通信
  • 网络通信(TCP/UDP协议 三次握手四次挥手 )
  • Webpack Bundle Analysis:减少包体积的技巧
  • Linux——进程(2)
  • IO多路复用—前言
  • 【OneAPI】中国行政区域省市县编码查询
  • 集成学习:融合多个模型
  • 负载均衡之HAProxy超全内容!!!
  • SDL 与 OpenGL 的关系
  • Vue3学习 Day01
  • @angular/forms 源码解析之双向绑定
  • 30天自制操作系统-2
  • Angular4 模板式表单用法以及验证
  • conda常用的命令
  • create-react-app做的留言板
  • ERLANG 网工修炼笔记 ---- UDP
  • JavaScript服务器推送技术之 WebSocket
  • JAVA多线程机制解析-volatilesynchronized
  • java正则表式的使用
  • JS基础之数据类型、对象、原型、原型链、继承
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • Promise面试题,控制异步流程
  • 分类模型——Logistics Regression
  • 来,膜拜下android roadmap,强大的执行力
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 深入浅出Node.js
  • 移动端解决方案学习记录
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​​​​​​​​​​​​​​Γ函数
  • ​学习笔记——动态路由——IS-IS中间系统到中间系统(报文/TLV)​
  • #70结构体案例1(导师,学生,成绩)
  • #微信小程序:微信小程序常见的配置传旨
  • $refs 、$nextTic、动态组件、name的使用
  • (02)Hive SQL编译成MapReduce任务的过程
  • (6)STL算法之转换
  • (二)c52学习之旅-简单了解单片机
  • (数据结构)顺序表的定义
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (一)为什么要选择C++
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • ***利用Ms05002溢出找“肉鸡
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .NET Framework杂记
  • .net mvc actionresult 返回字符串_.NET架构师知识普及
  • .NET 常见的偏门问题
  • .NET 中让 Task 支持带超时的异步等待
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)
  • .Net组件程序设计之线程、并发管理(一)
  • @Not - Empty-Null-Blank
  • @RequestParam,@RequestBody和@PathVariable 区别