将zip文件拆分为INDIVIDUAL件

时间:2011-03-09 22:47:45

标签: zip binaryfiles file-manipulation

我想做的是这个;

我从客户端获得这些zip文件,一般为1.5gb。它们都只包括图片。我需要将它们变成100mb文件才能将其实际上传到我的服务器。问题是,如果我打破我的1.5gb zip文件,我需要重新附加所有这些文件,如果我需要使用它。

当我将1.5gb的zip文件分成100mb的zip文件时,我需要100mb的文件作为单独的新文件,因此服务器将解压缩并将图片上传到数据库中。我已经找到了这个问题,但大多数线程都是关于如何拆分zip文件。这部分是我想要做的,我现在可以做到,但我也需要那些较小的部分能够自己解压缩。是否有可能将zip文件分成更小的片段,这些片段将充当新的独立zip文件?

感谢。

2 个答案:

答案 0 :(得分:1)

我有同样的问题。我认为Linux shell中的解压缩无法处理大于1 GB的zip文件,我需要在无头NAS中无人值守解压缩它们。我现在要做的是解压缩桌面高清中的所有内容,选择文件直到它们几乎达到1 GB,存档并删除它们,然后选择下一组文件,直到达到1 GB。

答案 1 :(得分:0)

你的答案不明确,但我会根据我对你的困境的理解来回答这个问题。

问题

  1. 为什么需要限制文件大小?
    • 转移到服务器是否是限制因素?
    • 应用程序(在服务器上)是否无法处理超过一定大小的文件?
  2. 是否可以更改流程以便在处理之前在服务器上重新组合图像文件片段?
  3. 客户端和服务器上正在使用哪些操作系统?
  4. 您是否有shell访问服务器?
  5. 一些选项

    • 使用imagemagick缩小文件以使其符合文件大小限制

    • 在Linux / Mac上,这样做相对简单:

      1. split -b 1m my_large_image.jpg(您需要b参数才能处理二进制文件)
      2. 将每个文件压缩为自己的zip
      3. 上传到服务器
      4. 解压
      5. 将片段连接回图像文件:
      6. cat xaa xab xac xad (etc) > my_large_image.jpg