精华内容
下载资源
问答
  • zip分卷压缩

    万次阅读 2019-04-09 11:39:14
    zip分卷压缩 首先将其压缩成一个大的zip压缩包之后再分卷 zip -r a.zip dir 2.将压缩完的大压缩包zip分卷 zip -s (1G|500M) a.zip --out b.zip 命令执行完会在文件夹下生成b.zip、b.z01、b.z02…等 在windows环境下...

    zip分卷压缩
    1 首先将其压缩成一个大的zip压缩包之后再分卷
    zip -r a.zip dir
    2 将压缩完的大压缩包zip分卷
    zip -s (1G|500M) a.zip --out b.zip
    命令执行完会在文件夹下生成b.zip、b.z01、b.z02…等
    在windows环境下解压时只需要将b.zip解压缩就可以将其他卷一起解析
    3 在linux环境下解压时,需要先将分散的压缩包合并
    zip b.zip b.z01 b.z02… -s=0 --out sum.zip
    之后再用unzip解压命令

    展开全文
  • 本文关键词:linux合并zip文件、linux下zip分卷压缩及linux下zip分卷解压、linux下zip分卷解压、linux下zip分卷压缩。先压缩原始文件[root@laofuxi.com tmp]# zip -r mariadb.zip /root/src/mariadb-10.2.11-linux-...

    9ddc589a9bae9dd81334056da3504a2c.png

    本文关键词:linux合并zip文件、linux下zip分卷压缩及linux下zip分卷解压、linux下zip分卷解压、linux下zip分卷压缩。

    先压缩原始文件

    [root@laofuxi.com tmp]# zip -r mariadb.zip /root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    adding: root/src/mariadb-10.2.11-linux-x86_64.tar.gz (deflated 2%)

    要看文件列表

    [root@laofuxi.com tmp]# ls -l

    total 439952

    -rw-r--r-- 1 root root 450510649 Sep 7 15:53 mariadb.zip

    分卷为100M一个文件

    [root@laofuxi.com tmp]# zip -s 100M mariadb.zip --out mariadb_test

    copying: root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    要看文件列表

    [root@laofuxi.com tmp]# ls -l

    total 879904

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z01

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z02

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z03

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z04

    -rw-r--r-- 1 root root 31080253 Sep 7 15:54 mariadb_test.zip

    -rw-r--r-- 1 root root 450510649 Sep 7 15:53 mariadb.zip

    合并所有分卷

    [root@laofuxi.com tmp]# cat mariadb_test.z* > all.zip

    要看文件列表

    [root@laofuxi.com tmp]# ls -l

    total 1319856

    -rw-r--r-- 1 root root 450510653 Sep 7 15:54 all.zip

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z01

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z02

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z03

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z04

    -rw-r--r-- 1 root root 31080253 Sep 7 15:54 mariadb_test.zip

    -rw-r--r-- 1 root root 450510649 Sep 7 15:53 mariadb.zip

    解压合并后的zip文件

    [root@laofuxi.com tmp]# unzip all.zip

    Archive: all.zip

    warning [all.zip]: zipfile claims to be last disk of a multi-part archive;

    attempting to process anyway, assuming all parts have been concatenated

    together in order. Expect "errors" and warnings...true multi-part support

    doesn't exist yet (coming soon).

    warning [all.zip]: 419430400 extra bytes at beginning or within zipfile

    (attempting to process anyway)

    file #1: bad zipfile offset (local header sig): 419430404

    (attempting to re-compensate)

    inflating: root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    要看文件列表

    [root@laofuxi.com tmp]# ls -l

    total 1319856

    -rw-r--r-- 1 root root 450510653 Sep 7 15:54 all.zip

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z01

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z02

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z03

    -rw-r--r-- 1 root root 104857600 Sep 7 15:54 mariadb_test.z04

    -rw-r--r-- 1 root root 31080253 Sep 7 15:54 mariadb_test.zip

    -rw-r--r-- 1 root root 450510649 Sep 7 15:53 mariadb.zip

    drwxr-xr-x 3 root root 17 Sep 7 15:55 root

    查看解压后的文件的md5值

    [root@laofuxi.com tmp]# md5sum root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    463992783249787d4d00f26e3f51306b root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    查看原始文件md5值

    [root@laofuxi.com tmp]# md5sum /root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    463992783249787d4d00f26e3f51306b /root/src/mariadb-10.2.11-linux-x86_64.tar.gz

    通过对比md5值,发现md5值是一样的,说明压缩及解压是正常的。

    最后编辑:2018-09-11作者:劳福喜

    c37a23e83f24f7a638008424565633b5.png

    这个作者貌似有点懒,什么都没有留下。

    展开全文
  • 文件的传输是我们在平时的工作和生活中经常能遇到的,但是我们经常遇到这样的问题,无法传输整个文件夹或者在传输中文件过大,这个时候我们就需要将文件进行压缩。那么如何压缩文件呢?下面小编就为大家介绍一下...

    文件的传输是我们在平时的工作和生活中经常能遇到的,但是我们经常遇到这样的问题,无法传输整个文件夹或者在传输中文件过大,这个时候我们就需要将文件进行压缩。

    那么如何压缩文件呢?

    下面小编就为大家介绍一下WINRAR软件压缩文件的步骤。

    如果遇到上面小编说的情况,大家可以根据小编介绍的步骤进行文件的压缩。4c636568e7d44b7f6bdee07619eae96e.png

    工具/原料  WINRAR软件  WinRAR它不像WinZip那样必须在软盘的支持下才可以使用这个功能,WINRAR在制作的时候能够将某个大文件分卷压缩存放在任意指定的盘符中,所以这也大大的方便了我们的使用。c2fe3b514ab0fefbde2011d72e6f7e43.png

    步骤/方法  1、右击需要分卷压缩的文件或者是文件夹,在弹出的菜单中选择“添加到压缩文件...”选项。

    2、在弹出的设置窗口中,我们可以在“压缩包名称”对话框中确定文件存放的路径和名称,这时就可以将分卷压缩之后的文件存放在硬盘中的任何一个文件夹中。

    3、同时在“压缩方式”下拉列表中选择采用何种方式进行压缩,建议大家采用“最好”方式,这样能够让WinRAR最大程度的压缩文件。

    4、下部的压缩卷大小对话框可以设置每一个压缩包的个头大小。

    这就是我们要掌握的关键,先说说WinRAR默认的是1.44M软盘模式,不过你也可以定义压缩包大小。

    请记住默认单位是字节哟。

    要我们了解一下换算单位,1M=1024000字节。

    那么单个文件限制在1M的,这里就不能输入超过1024000了。

    5、根据实际需要选择存档选项,比如能够直接将文件保存为自解压方式的EXE文件、设置身份验证信息、压缩完毕后删除原先的文件等等。

    6、上面的设置完后,这样我们就可以得到以定义好的文件名为前缀,rar、r01、r02之类为后缀名的文件。610ba331f1cc1179f9918207c8ba097b.png

    压缩文件看起来步骤比较多,但是其实在使用中你会发现压缩文件非常简单。

    文件的压缩在工作和生活中的使用也是越来越多,不仅传输方便,而且压缩文件比较小,传输时间也比较短。

    另外小编要提醒大家的是,大家如果采用分卷压缩的话,一定要把所有的压缩文件放在同一个文件下,不要放在不同的文件夹。

    另外,不要丢失分卷,如果分卷丢失的话,将无法解压。

    展开全文
  • zipfile 库,然而,它的官方文档中却明确标注“此模块目前不能处理分卷 ZIP 文件”,(⊙﹏⊙)折腾经过翻遍了Google、CSDN、Stackoverflow等平台均未找到解决方案,最靠谱的是调用外部解压程序实现分卷压缩的功能。...

    使用zipfile库

    利用 Python 压缩 ZIP 文件,我们第一反应是使用 zipfile 库,然而,它的官方文档中却明确标注“此模块目前不能处理分卷 ZIP 文件”,(⊙﹏⊙)

    折腾经过

    翻遍了Google、CSDN、Stackoverflow等平台均未找到解决方案,最靠谱的是调用外部解压程序实现分卷压缩的功能。但是,如何不依靠外部程序实现这个功能呢??

    于是乎,只能自己慢慢造轮子。看着 ZIP 格式开发商留下的文档 ZIP File Format Specification,头疼啊(;´д`)。于是我拿着 WinHex 开始16进制一个一个文件对比 WinRar 创建的分卷压缩和单个 zip 文件的差异。最后还真的整出来了( ̄▽ ̄)"

    如果想把单个大文件 test.zip -> 分卷文件 test.z01、test.z02、test.zip

    首先,在创建的第一个分卷文件 test.z01的前面加上 \x50\x4b\x07\x08 这个是分卷压缩的文件头(header),占4个字节。其实单个压缩文件本身 header 就有这个了,而分卷压缩的需要两个emmm。之后便是从单个大压缩文件文件test.zip中读取 "一个分卷大小 -4 个字节"的数据,写入test.z01中,如何接着读取一个分卷大小的数据,写入test.z02,以此类推,最后一个分卷文件名也是test.zip。

    Python3的代码实现

    import os

    import zipfile

    def zip_by_volume(file_path, block_size):

    """zip文件分卷压缩"""

    file_size = os.path.getsize(file_path) # 文件字节数

    path, file_name = os.path.split(file_path) # 除去文件名以外的path,文件名

    suffix = file_name.split('.')[-1] # 文件后缀名

    # 添加到临时压缩文件

    zip_file = file_path + '.zip'

    with zipfile.ZipFile(zip_file, 'w') as zf:

    zf.write(file_path, arcname=file_name)

    # 小于分卷尺寸则直接返回压缩文件路径

    if file_size <= block_size:

    return zip_file

    else:

    fp = open(zip_file, 'rb')

    count = file_size // block_size + 1

    # 创建分卷压缩文件的保存路径

    save_dir = path + os.sep + file_name + '_split'

    if os.path.exists(save_dir):

    from shutil import rmtree

    rmtree(save_dir)

    os.mkdir(save_dir)

    # 拆分压缩包为分卷文件

    for i in range(1, count + 1):

    _suffix = 'z{:0>2}'.format(i) if i != count else 'zip'

    name = save_dir + os.sep + file_name.replace(str(suffix), _suffix)

    f = open(name, 'wb+')

    if i == 1:

    f.write(b'\x50\x4b\x07\x08') # 添加分卷压缩header(4字节)

    f.write(fp.read(block_size - 4))

    else:

    f.write(fp.read(block_size))

    fp.close()

    os.remove(zip_file) # 删除临时的 zip 文件

    return save_dir

    if __name__ == '__main__':

    file = r"D:\Downloads\1.mp4" # 原始文件

    volume_size = 1024 * 1024 * 100 # 分卷大小 100MB

    path = zip_by_volume(file, volume_size)

    print(path) # 输出分卷压缩文件的路径

    缺点

    该方法创建分卷压缩的时候,需要先在磁盘创建一个临时压缩包,然后将其拆分,实际上会对磁盘写入两次,这就浪费了时间。

    当然,我尝试使用 ByteIO 进行字节流的压缩,但是这种方式需要先把文件读入内存,对于超级大的文件,这是不现实的,分分钟内存爆炸。

    然后,我尝试使用 io.pipe 的管道来处理,而 zipfile 压缩需要提供一个 file 或 file-like 对象,这个对象必须实现 seek() 和 tell() 方法来回去写入文件头信息,然而管道流没办法seek回去修改数据。这里,参考了Python zipfile + os.pipe()探索记,屏蔽了 seek() 和 tell() 函数。但是,后面我分卷时需要指定读取的字节数,这就需要这两个函数。。。我大概知道为什么 zipfile 库不支持创建分卷文件了〒▽〒

    这个库的作者也没少掉头发。。。现在就将就一下,这样用着吧。。。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    展开全文
  • 主要介绍了Python3实现zip分卷压缩过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • Python3实实现现zip分分卷卷压压缩缩过过程程解解析析 这篇文章主要介绍了Python3实现zip分卷压缩过程解析,文中通过示例代码介绍的非常详细对大家的学习或者工 作具有一 的参考学习价值,需要的朋友可以参考下 使使用...
  • zip分卷压缩 1 首先将其压缩成一个大的zip压缩包之后再分卷 zip -r a.zip dir 2 将压缩完的大压缩包zip分卷 zip -s (1G|500M) a.zip --out b.zip 命令执行完会在文件夹下生成b.zip、b.z01、b.z02…等 在...
  • 01.前言 我在上篇文章“关于压缩和解压缩的一些名词简介”中简单介绍过“分卷压缩”,“分卷”就是化整为零,主要用于将非常大的文件压缩成多个“子压缩包”,解压的时候,必须集齐全部“子压缩包”在一个文件夹,...
  • zip分卷压缩和解压

    2020-07-15 13:24:36
    分卷压缩的话,需要先将文件打包成一个zip包,然后执行 zip -s SIZE origin.zip --out new.zip SIZE为分卷的大小4m,4g,4t等 解压的时候需要先将它合并才能正常解压 zip new.zip -s=0 --out single.zip
  • Linux zip分卷压缩

    万次阅读 2017-01-07 11:09:34
    分卷压缩的话,需要先将文件打包成一个zip包,然后执行 zip -s SIZE origin.zip --out new.zip SIZE为分卷的大小4m,4g,4t等 解压的时候需要先将它合并才能正常解压 zip spiltfile.zip -s=0 --...
  • 文件的传输是我们在平时的工作和生活中经常能遇到的,但是我们经常遇到这样的问题,无法传输整个文件夹或者在传输中文件过大,这个时候我们就需要将文件进行压缩。那么如何压缩文件呢?下面小编就为大家介绍一下...
  • 我们上传东西的时候,由于文件过大而不能上传,或者不给上传,最明显的就是发邮件了,附件最大5M,有的...但是在linux下面有没有这样的方法了,linux下面有rar命令,有zip命令,windows下面这二种方式可以分割压缩,...
  • zip分卷压缩与合并解压

    千次阅读 2020-08-27 19:01:28
    压缩zip test.zip test.doc //先压缩不然会报错 分卷zip -s 50m test.zip --out ziptest 合卷: cat ziptest.z* > test.zip //利用cat来合卷 解压: unzip test.zip
  • Mac 下使用 ZIP 分卷压缩

    万次阅读 2016-12-18 11:39:29
    使用 zip 命令压缩文件,并结合 split 命令来分卷zip - largefile | split -b 500k 上述命令将文件 largefile 压缩zip 包并分卷成不超过 500k 的文件,分解后文件名默认是 x* ,后缀为 2 位 a-z 字母,如 aa...
  • 下了三个zip分卷压缩包,名字分别为:1.zip,2.zip,3.zip,要解压缩时1.zip,2.zip解压缩时报告错误, 查看1.zip,2.zip的crc校验码都为0,但3.zip的校验码是正常的。 二、问题的分析 分卷压缩应该不是显示做三个...
  • 例如:一个文件夹大小200G,压缩成压缩包,压缩包大小限制为200M每个,怎么分卷压缩
  • 今天小编分享一款常用软件电脑办公学习都是无法离开它一款精致的解压缩软件听到这个词大家是不是有点失望因为现在网络上很多解压缩软件都是免费的为何小编还是介绍这种软件原因只有两个:1、界面简单干净2、无任何...
  • 安装zip yum install zip 合并压缩文件 cat test.zip* > all.zip unzip all.zip 解压乱码问题 unzip -O CP936 all.zip
  • Archiver是一款功能齐全的压缩解压工具,简单实用且功能齐全,你只需简单的拖放文件就可以进行压缩,可以设定解压密码,可以切割文件。...Archiver for Mac 解压缩软件具有压缩包加密、分卷压缩、压缩包...
  • 在使用电脑时,压缩软件可以说是我们使用频率最高的软件之一了,不管你是从网站上下载东西,还是工作上和他人互传文件,都经常会用到解压与压缩软件,一款好用的压缩软件是十分必要的,下面就来推荐几款好用的压缩与...
  • 本公众号,有时会发布各种各样的软件 或者游戏解压软件推荐手机解压推荐 Zarchiver一款在安卓端,兼容性,解压效果很好的一款APParchiver是一款手机解压缩文件的应用程序,此应用功能虽然简单却很实用.操作方式也很...
  • 1、压缩算法不同,rar格式能够提供更好的压缩率,zip是一种开放性的压缩文件,算法不局限于一种,zip的优势是压缩速度快。2、rar格式是私有的并且已经申请了专利,zip是公开免费的。3、rar不支持恢复记录,zip支持...
  • 1.zip 分卷压缩与合并解压 1. 分卷压缩 # 将文件或文件夹打包为zip压缩包,imgs可以为文件夹也可以为文件 zip -r imgs.zip ./imgs # 压缩后imgs.zip为2.3G,将其分割,每个子压缩包不超过1G,生成三个压缩包...
  • Linux zip/unzip分卷压缩,解压

    千次阅读 2020-12-02 15:31:57
    分卷压缩: 1.先把源文件压缩个成zip zip -r b.zip a.html 2.根据情况分卷--4g zip -s 4g b.zip --out c.zip 分卷解压: 3. 合并文件 cat c.zip.* > d.zip 4. 解压 unzip d.zip
  • tar 分卷压缩与合并 示例:demo.zip 分卷压缩: tar -czvf - demo.zip |split -b 98m - demo.zip 合并 cat demo.zip* | tar -xzv 3. 解压到指定文件夹 mkdir demo unzip -d demo demo.zip ...
  • 分卷压缩使用方法: int iMinLength = 100;//最小压缩包单位(100M) ZipHelper.Compress("../../../xxx.xx", "../../../xx.zip", ZipDataUnit.MB, iMinLength);//分卷压缩 解压使用方法 : string ...
  • 外国网站,访问困难,贴出主要的代码在下面:import java.io.File;...import net.lingala.zip4j.core.ZipFile;import net.lingala.zip4j.exception.ZipException;import net.lingala.zip4j.model.ZipParameters;i...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 559
精华内容 223
关键字:

zip分卷压缩