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

Linux基本命令篇 —— zip/unzip命令

        掌握zip和unzip命令可以让你在Linux环境下高效地处理压缩文件,无论是备份、传输还是归档文件都非常有用。

目录

一、zip命令

1、基本语法

2、常用选项

3、使用示例

压缩单个文件        

压缩多个文件

压缩目录(递归压缩)

加密压缩

压缩时排除某些文件

使用最高压缩率(了解)

更新压缩包中的文件

二、unzip命令

1、基本语法

2、常用选项

3、使用示例

解压到当前目录

解压到指定目录

列出压缩包内容但不解压

解压加密的zip文件

安静模式解压(不显示解压过程)

测试zip文件完整性

解压时不覆盖已有文件

三、实用技巧

批量解压多个zip文件

压缩时排除特定类型文件

查看zip文件注释

创建自解压zip文件(需要zipinfo支持)(了解即可)

分卷压缩(需要先使用split命令)(了解即可)

合并分卷zip文件(了解即可)

四、注意事项


        在 Linux 系统中使用 zip 和 unzip 命令之前,需要确保系统已经安装了相应的软件包,你可以根据你的Linux 发行版搜索相关的安装方法,以下是Red Hat/CentOS/RHEL/Fedora发行版的安装方法: 

# CentOS/RHEL 7/8/9 和 Fedora
sudo yum install zip unzip

一、zip命令

zip是Linux下常用的压缩工具,用于将文件或目录压缩成.zip格式的压缩包。

1、基本语法

zip [选项] 压缩包名 源文件或目录

2、常用选项

选项说明
-r递归压缩(包括子目录和文件)
-q安静模式,不显示指令执行过程
-e加密压缩,会提示输入密码
-1~-9压缩级别,1最快但压缩率低,9最慢但压缩率高
-x排除某些文件不压缩
-m压缩后删除源文件
-F尝试修复损坏的压缩文件
-u更新压缩包中的文件
-v显示详细压缩过程
-T测试压缩文件是否完整

3、使用示例

  1. 压缩单个文件        

    zip archive.zip file.txt

            在 zip 命令的输出中,显示的 14% 表示 压缩率,即压缩后的文件大小是原文件大小的 14%,或者说压缩节省了 86% 的空间:

  2. 压缩多个文件

    zip archive.zip file1.txt file2.txt

  3. 压缩目录(递归压缩)

    zip -r archive.zip directory/

  4. 加密压缩

    zip -e secure.zip file.txt
    # 会提示输入密码

  5. 压缩时排除某些文件

    zip archive.zip * -x "exclude.txt"

    参数说明:
    archive.zip:生成的压缩文件名。
    *:匹配当前目录所有文件(但会排除 exclude.txt)。
    -x "exclude.txt":排除指定的文件(支持通配符,如 *.log)。

  6. 使用最高压缩率(了解)

    zip -9 maximum.zip largefile.iso

    参数说明
    dd磁盘操作工具(disk dump),用于按字节流读写数据。
    if=/dev/zero输入文件(input file),/dev/zero 是 Linux 特殊设备,提供无限的空字节(ASCII 0);/dev/zero 会持续输出 0x00(二进制零),因此生成的文件内容全是 0
    of=largefile.iso输出文件(output file),生成的文件名。
    bs=1M块大小(block size),每次读写 1MB 数据(1M = 1MiB = 1024×1024 字节)。
    count=100操作次数,总共写入 100 个块(100 × 1MB = 100MB)。
  7. 更新压缩包中的文件

    zip -u archive.zip newfile.txt


二、unzip命令

unzip用于解压.zip格式的压缩文件。

1、基本语法

unzip [选项] 压缩包名 [-d 目标目录]

2、常用选项

选项说明
-l列出压缩包内容但不解压
-d指定解压目录
-o不询问直接覆盖已有文件
-n不覆盖已有文件
-q安静模式,不显示解压过程
-P直接指定密码(不安全)
-v查看压缩包详细信息
-t测试压缩文件完整性

3、使用示例

  1. 解压到当前目录

    unzip archive.zip

  2. 解压到指定目录

    unzip archive.zip -d ~/path/to/directory

  3. 列出压缩包内容但不解压

    unzip -l archive.zip

  4. 解压加密的zip文件

    unzip -P password secure.zip
    # 或者不指定密码,会提示输入
    unzip secure.zip

  5. 安静模式解压(不显示解压过程)

    unzip -q archive.zip

  6. 测试zip文件完整性

    unzip -t archive.zip

  7. 解压时不覆盖已有文件

    unzip -n archive.zip


三、实用技巧

  1. 批量解压多个zip文件

    unzip '*.zip'
  2. 压缩时排除特定类型文件

    zip archive.zip * -x "*.tmp" "*.log"
  3. 查看zip文件注释

    unzip -z archive.zip

  4. 创建自解压zip文件(需要zipinfo支持)(了解即可)

    echo '#!/bin/sh' > installer.sh
    echo 'tail -n +4 "$0" | unzip -q -' >> installer.sh
    echo 'exit' >> installer.sh
    zip -r archive.zip files/
    cat archive.zip >> installer.sh
    chmod +x installer.sh
  5. 分卷压缩(需要先使用split命令)(了解即可)

    zip -r -s 64m archive.zip large_directory/
    # 这会创建archive.z01, archive.z02,... archive.zip
  6. 合并分卷zip文件(了解即可)

    zip -s 0 split.zip --out unsplit.zip

四、注意事项

  1. zip/unzip对中文文件名支持良好,但建议在解压时使用相同的字符集环境

  2. 加密zip文件使用传统加密方式,安全性不高,重要数据应考虑使用7z等更安全的加密方式(了解)

  3. 大文件压缩时,使用-1到-9选项可以平衡速度与压缩率

  4. 解压时如果遇到文件名冲突,默认会询问如何处理,可以使用-o或-n选项避免交互

  5. zip格式在Linux和Windows间有良好的兼容性,适合跨平台文件交换

http://www.dtcms.com/a/265762.html

相关文章:

  • Apache Commons Pool中的GenericObjectPool详解
  • 华为Freebuds 6i新音效,设置后音质敲好!
  • Nginx安全配置漏洞修复实战指南
  • 百度文心智能体平台x小米应用商店:联手打造行业首个智能体与应用市场跨端分发模式
  • React 强大的表单验证库formik之集成Yup、React Hook Form库
  • 使用 Dockerfile 构建基于 .NET9 的跨平台基础镜像
  • 安卓开机自启动方案
  • Kafka生态整合深度解析:构建现代化数据架构的核心枢纽
  • Sklearn安装使用教程
  • 机器人焊接电源节气阀
  • 工程化实践——标准化Eslint、PrettierTS
  • 读书笔记:《DevOps实践指南》
  • android 网络访问拦截器的编写的几种方式
  • React 学习(3)
  • springboot 中使用 websocket
  • PHP:从入门到实践——构建高效Web应用的利器
  • 2011年英语一
  • AlpineLinux安装x11vnc服务端实现远程桌面登录
  • Zephyr RTOS 防止中断影响数据写入
  • cv610将音频chn0配置为g711a,chn1配置为 aac编码,记录
  • ARM SMMUv3故障和错误(五)
  • mac 电脑安装Homebrew来安装npm与node成功后,安装nvm的流程
  • macOS 26正式发布,全新Liquid Glass设计语言亮相
  • join性能问题,distinct和group by性能,备库自增主键问题
  • 微信小程序在用户拒绝授权后无法使用wx.opensetting再次获取定位授权
  • 针孔相机模型
  • python学习打卡day59
  • 【轨物洞见】光伏机器人与组件、支架智能化协同白皮书
  • Linux操作系统之文件(二):重定向
  • Android 系统默认的Launcher3,Android 系统的导航栏(通常是屏幕底部)显示的 4 个快捷应用图标,如何替换这4个应用图标为客户想要的。