0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在Linux使用zip命令创建拆分/分割zip文件

CHANBAEK 来源:myfreax 作者:myfreax 2022-12-07 17:36 次阅读

Zip是使用最广泛的存档文件格式,它支持无损数据压缩。Zip文件是包含一个或多个文件或目录的数据压缩容器。

已压缩文件占用较少的磁盘空间可以比未压缩文件更快地从一台机器传输到另一台机器。

zip文件适用于所有操作系统,可以在Windows,macOS和Linux中解压缩Zip文件。在本教程中,我们将向您展示如何在Linux使用zip命令创建拆分/分割zip文件。

安装 zip

要检查您的系统上是否安装zip,请运行命令zip --version,命令将会打印zip的版本号。

如果您的系统上未安装unzip,终端将会提示你bash: command not found: zip。可以使用发行版的软件包管理器进行安装。

如果你的计算机运行的是基于Debian的Linux发行版,例如Ubuntu,Linux mint,可以运行sudo apt update && sudo apt install zip安装zip。

如果你的计算机运行的是基于Redhat的Linux发行版,例如Fedora,CentOS。可以运行sudo yum install zip安装zip。

sudo apt install zip
sudo yum install zip

zip 命令选项

zip命令语法形式是zip OPTIONS ARCHIVE_NAME FILESARCHIVE_NAME 是存档的名称,FILES可以是一个或者多个文件与目录。

要在指定的目录中创建Zip文件,用户需要对该目录具有写入权限,对要压缩的文件具读取权限。

ZIP文件不支持Linux权限信息,zip文件解压缩后的文件并不保留原始权限的信息,解压缩的文件归运行unzip命令的用户所有。

如果你需要保留文件权限信息,使用tar命令创建存档文件。

zip 命令压缩文件和目录

要使用zip命令压缩一个或多个文件,请在zip命令指定存档文件的名称,然后是指定要添加到zip存档的文件。文件使用空格分隔。

如果指定的名称省略扩展名.zip,zip命令将会自动添加扩展名到存档名称。例如命令zip archivename filename将创建一个与之相同名称的存档archivename.zip

通常,你都是压缩目录及其子目录的所有文件,但zip命令并不会递归压缩所有文件与目录,如果需要递归压缩文件与目录,请使用unzip命令的-r选项。

默认情况下,zip命令打印添加到存档的文件名称和压缩方法。要禁止zip命令打印这些信息,可以使用zip命令的-q选项。

zip archivename.zip filename1 filename2 filename3
zip -q archivename.zip filename1 filename2 filename3
zip -r archivename.zip directory_name
adding: filename1 (deflated 63%)
adding: filename2 (stored 0%)
adding: filename3 (deflated 38%)

zip 命令压缩方法和级别

Zip的默认压缩方法是 deflate 。如果zip命令确定无法压缩文件,zip命令则使用store方法将文件添加到zip存档文件,并且不对文件进行压缩。

在大多数Linux发行版中,zip命令还支持bzip2压缩方法。要指定压缩方法,请使用zip命令的-Z选项。

zip命令允许您使用前缀-和0到9的数字指定压缩级别。默认压缩级别为-6。在指定的压缩级别为-0,所有文件都不会被压缩,而仅仅是添加到存档文件。

当压缩级别指定为-9时,将强制zip命令对所有文件使用最佳压缩。压缩级别越高,zip进程占用的CPU越多,并且需要更多时间才能完成。

zip -r -Z bzip2 archivename.zip directory_name
zip -9 -r archivename.zip directory_name
...
adding: sub_dir/ (stored 0%)
adding: sub_dir/file1 (bzipped 52%)
adding: sub_dir/file2 (bzipped 79%)

创建多个拆分zip文件

想象一下,您希望将Zip存档存储在文件托管服务上,文件上传大小限制为1GB,但你的Zip文件为5GB。

此时,您可以使用-s选项后跟指定的文件大小创建多个Zip文件。单位可以是k千字节,m兆字节,g千兆字节或t万兆字节。

例如命令zip -s 1g -r archivename.zip directory_name将会在zip文件达到1GB后,创建新的zip文件继续压缩。

zip -s 1g -r archivename.zip directory_name
archivename.zip
archivename.z01
archivename.z02
archivename.z03
archivename.z04

结论

在Linux,您可以使用zip命令创建Zip存档。要在Linux解压缩ZIP存档,可以使用unzip命令。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11222

    浏览量

    208890
  • Zip
    Zip
    +关注

    关注

    0

    文章

    17

    浏览量

    8625
  • 文件
    +关注

    关注

    1

    文章

    561

    浏览量

    24693
  • 命令
    +关注

    关注

    5

    文章

    678

    浏览量

    21983
收藏 人收藏

    评论

    相关推荐

    何在Linux使用zip命令压缩文件和目录

    Zip是使用最广泛的存档文件格式,它支持无损数据压缩。Zip文件是包含一个或多个文件或目录的数据压缩容器。
    发表于 12-08 16:50 9822次阅读

    何在Java中加密和解密zip文件

    在本文中,我们来学习如何用Zip4j库创建受密码保护的压缩文件并将其解压。 依赖 让我们先把 zip4j 依赖关系添加到我们的 pom.xml 文件
    的头像 发表于 10-08 11:48 1743次阅读

    何在Linux中使用htop命令

    本文介绍如何在 Linux 中使用 htop 命令
    的头像 发表于 12-04 14:45 1898次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>Linux</b>中使用htop<b class='flag-5'>命令</b>

    SDK Zip文件损坏怎么解决?

    自上次计划升级论坛以来,SDK 压缩文件([SDK 版本] ESP8266_NONOS_SDK_V1.5.2_16_01_29)已损坏。 我已经在几台机器(Mac、Windows 7 和 Linux)上进行了验证。 我已经能够使用 zi
    发表于 07-18 08:19

    Linuxzip unzip安装步骤

    Linux 安装 zip unzip 1.apt-get 安装apt-get install zip2.yum 安装
    发表于 07-26 07:35

    Linuxzip和rar文件解压方法

    Linux下如何解压.zip和.rar文件,对于Window下的常见压缩文件.zip和.rar,Linu
    发表于 07-26 07:42

    touchgfx zip文件损坏是为什么?

    最近我想尝试使用 touchgfx 包。我从网站 (en.X-CUBE-TOUCHGFX_4-20-0.zip) 下载了一个 zip 存档文件,但无法解压缩。所有使用的程序都将此存档识别为已损坏。难道我做错了什么?
    发表于 12-05 07:04

    Linux目录的创建与删除命令

    Linux目录的创建与删除命令 Linux目录的创建与删除命令  mkdir
    发表于 01-18 12:46 1310次阅读

    何在 Linux分割和重组文件

    导读Linux 有几个用于分割文件的工具程序。那么你为什么要分割文件呢?一个用例是将大
    发表于 04-02 14:39 358次阅读

    何在Linux使用tar命令创建/提取tar文件

    `tar`命令允许您创建,提取,解压缩tar存档文件。它支持各种压缩程序,例如`gzip`,`bzip2`,`lzip`,`lzma`,`lzop`,`xz`和`compress`压缩程序。
    的头像 发表于 12-05 16:37 4030次阅读

    何在Linux使用pidof命令

    `pidof`是一个命令行程序,可让您找到正在运行程序的进程ID。在教程中,我们将说明如何在Linux 使用pidof命令
    的头像 发表于 12-05 17:01 2288次阅读

    何在Linux使用touch命令

    Linux touch命令用于更改文件时间戳。但touch命令的最常见用法是创建文件
    的头像 发表于 12-05 17:21 2025次阅读

    恒讯科技分析:如何在Linux上使用rm命令删除文件和目录?

    本指南展示了如何在Linux中使用rm命令行删除文件、目录和其他内容?
    的头像 发表于 06-09 17:02 1152次阅读

    创建/提取整个Zip文件的新方法

     创建和读取Zip文件,无需中间磁盘/内存存储,无需等待完整的文件到达或读取。为服务器和网络场景以及高需求环境提供了理想的“动态”性能。由响应迅速的支持和开发团队提供支持,他们的唯一目
    的头像 发表于 06-25 10:26 775次阅读
    <b class='flag-5'>创建</b>/提取整个<b class='flag-5'>Zip</b><b class='flag-5'>文件</b>的新方法

    vps服务器的linux怎么查看zip压缩包里的内容?

    命令安装: sudo apt update sudo apt install unzip 对于其他 Linux 发行版,请使用相应的包管理工具来安装 unzip。 2、解压缩zip文件
    的头像 发表于 03-22 17:34 750次阅读