【问题标题】:how to add folder to subfolder inside existing zip file如何将文件夹添加到现有zip文件中的子文件夹
【发布时间】:2017-10-05 21:38:53
【问题描述】:

我想实现以下(简单)任务,但我不知道如何......

我有一个这样的 zip 文件,只包含一些文件夹

dummy.zip:

/my/dummy/folder/stucture

如何使用命令行 (linux) 将文件夹添加到新添加的文件和目录位于“/my/dummy/folder/stucture”下的 dummy.zip 文件中?

dummy.zip 之后应该如下所示:

/my/dummy/folder/stucture/my/new/Dirs

I've made a screenshot to better illustrate what I mean

【问题讨论】:

    标签: linux shell zip


    【解决方案1】:

    要将“存档”附加到现有的 zip 文件中,您可以使用选项 -r

    zip -r9 dummy.zip dirs
    

    你可以打包你的 zip:

    $ zip -9 dummy.zip file
    

    然后你可以添加一个完整的目录:

    $ zip -r9 dummy.zip dirs 
    

    或者同根目录下的内容:

    $ cd dirs
    $ zip -r9 dummy.zip *
    

    -9 是压缩级别,在本例中为最大值。

    【讨论】:

    • 所有命令将新文件放入 zip 文件的“根”文件夹中。必须有一个选项来告诉 zip 将新文件放在哪里......您可以使用 zip gui 轻松完成此操作。不敢相信这是一项不寻常的任务......
    • 我正在寻找类似 zip -a -r myOldZip.zip/existing/folder/insideZip/newFolderToAdd 的东西(我知道这条线不起作用;))
    • existing/folder/...下创建目录结构然后添加完整目录zip -r file.zip existing
    【解决方案2】:

    如果您有生成第一个 zip 文件的原始文件夹,则可以添加所需的文件夹/文件,然后使用 zip 命令中的选项 -u

    此选项将使用新添加的文件夹和文件更新 zip,您可以像这样使用它:

    $> mkdir /my/dummy/folder/stucture/my/new/Dirs
    $> zip -u dummy.zip /my/dummy
    

    【讨论】:

    • 抱歉,这不是我所需要的。在我的情况下,要添加到虚拟 zip 文件中的数据包含很多繁重的单个文件,我不能乱搞文件结构。我只需要将目标文件夹添加到 zip 文件中的某个位置。客户需要这样才能开心:/
    猜你喜欢
    • 2022-10-07
    • 1970-01-01
    • 1970-01-01
    • 2022-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-13
    • 1970-01-01
    相关资源
    最近更新 更多