当前位置: 首页 > 知识库问答 >
问题:

使用 zip 实用程序从工作区目录中压缩多个文件/文件夹

相俊迈
2023-03-14

我们有一个Jenkins管道,我想压缩位于我工作区内多个目录中的多个文件(.py和.cfg)。有没有一种方法可以将多个值传递给zip方法的dir选项?

zip (zipFile: "package.zip", dir: "${WORKSPACE}/infra/folder1/")

P.S:我可以在zip过程之前添加一个额外的阶段,并将所有必需的文件移动到一个文件夹并使用上面的zip方法存档该文件夹,但我想避免额外的步骤/阶段

共有1个答案

姜飞飙
2023-03-14

我已经在jenkinsci/pierine-uitle-steps-plugin中查看了JENKINS管道实用程序步骤插件的源代码:

  • zip/ZipStep.java
  • zip/ZipStepExecution.java

没有任何迹象表明您可以:

    < li >传递多个目录 < li >对一个归档文件多次执行压缩步骤,将文件夹追加到现有归档文件中

所以你必须:

    < li >按照建议,使用右shell glob模式 < li >预先执行一个步骤,将多个文件夹复制到一个公共文件夹中,然后您可以应用< code>zip步骤。
 类似资料:
  • 我有一个包含一些子目录的目录。我可以看到目录中带有“gci-Recurse *| %{ Write-host$_}”的文件。在这个给定的列表中有一些zip文件。我想在使用“展开存档”时将这些zip文件解压缩到一个名为zip文件的目录中。 如何将调用“gci-Recurse*|%{write host${}”与“Expand Archive”结合起来。

  • 我在下面找到了这个脚本,但它对我不起作用,因为我的文件有空间,而且我在一个zip文件中有多个文件。 请救命!谢谢你

  • 我的要求是解压缩我从Linux平台上的服务器接收的一个zip文件。现在我的应该解压缩文件夹以接收文件。 我在网上进行了研究,发现我可以为此目的使用库,但zlib不能解压缩文件,但它的文件夹中有可用于此目的的。 我从http://www.zlib.net/下载了源文件: 现在转到并尝试编译 我尝试,但得到以下错误:

  • 我有一个压缩文件。“test.zip”,其中包含另外两个zip文件-a.zip和b.zip。我只想提取a.zip的内容,而不触及b.zip。 我尝试了下面的代码片段,但还没有找到运气- 请告知如何实现这一目标。

  • 问题内容: 我尝试解压缩150个zip文件。所有zip文件都使用不同的名称,它们都分散在一个大文件夹中,该文件夹分为许多子文件夹和子子文件夹。我想将每个存档提取到与原始zip文件名相同名称的单独文件夹中,与原始zip文件位于同一位置。我的代码是: 我运行代码后,什么都没有发生。在此先感谢您的任何帮助。 问题答案: 更新: 最后,这段代码对我有用:

  • 本文向大家介绍C#实现Zip压缩目录中所有文件的方法,包括了C#实现Zip压缩目录中所有文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现Zip压缩目录中所有文件的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的C#程序设计有所帮助。