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

我如何使用jenkins删除目录中的文件

郭华美
2023-03-14

在我的系统中,我每天都在1个文件夹中下载新构建,然后将其用于进一步的原因,但在运行jenkins作业后,我想删除文件夹(不是工作区)中的文件,这将从同一目录中删除特定文件夹。这将帮助我每次根据在同一台机器上运行的不同jenkins作业下载新构建。

EG:

我正在下载x.x构建,然后在机器上运行jenkins作业,然后如果我想运行其他需要x.y构建的作业,它会查看文件夹中是否已经有一些构建。如果有,之后就不会再下载任何工具包了。所以,现在我能做的最简单的事情就是在每次jenkins运行(post build)后删除x.x,这样下次它就会下载x.y..

请帮忙。提前谢谢

共有2个答案

乜昆
2023-03-14

如果我的理解是正确的,考虑我下面的假设

如果你的 jenkins 在 Unix 服务器上运行,那么你可以按照上面的 nerdwaller 的建议配置一个后期构建步骤。

  1. 在作业配置的构建步骤中,选择“执行 unix 命令”选项
  2. 在 shell 脚本的框中,可以使用 rm -rf

否则,如果jenkins在windows服务器上运行,则从构建步骤中选择“执行批处理命令”,并给出相应的命令,如rmdir/Q/S nonemptydir

然而,我的最佳方法是使用平台无关的工具(如ant)使用ant delete Task删除文件夹,并且可以类似于上述两种方法进行配置,而不是在构建步骤/构建后步骤中选择“调用ant”。

这将帮助你实现你所需要的。

曹茂材
2023-03-14

您可以使用以下语法删除整个文件夹,以删除名为< code>bin的文件夹:

stage('Setup') {
    steps {
        dir ('bin') {
            deleteDir()
        }
    }
}
 类似资料:
  • 我是Camel的新手,正在探索使用Camel从特定目录删除文件的方法。我想知道基于过滤器从目录中删除文件的不同方法,如删除所有。txt文件或删除20天内未修改的文件等。

  • 问题内容: 我想删除目录中带有扩展名的所有文件。如何在Python中做到这一点? 问题答案: 通过和: 仅使用一个循环: 或通过: 确保位于正确的目录中,并最终使用。

  • 问题内容: 我在应用程序中拥有的导出工具的任务之一是清除应用程序目录树中的所有目录。我正在Linux外壳中寻找一个递归命令,该命令将遍历整个树并删除文件。 我没有使用export,因为此脚本将用于与SVN不相关的其他文件/目录名称。我尝试了类似的东西: 没用… 问题答案: 尝试这个: 在运行这样的命令之前,我经常喜欢先运行以下命令:

  • 问题内容: 我想知道,删除包含所有文件的目录的最简单方法是什么? 我正在删除一个文件夹,但是,如果其中有文件,我将无法删除。 问题答案: 如今至少有两种选择。 在删除文件夹之前,请删除其所有文件和文件夹(这意味着递归!)。这是一个例子: } 如果您使用的是5.2+,则可以使用RecursiveIterator来实现,而无需自己实现递归:

  • 我的应用程序将txt文件存储在FTP服务器上,该服务器也托管在WebService上。 但是,即使该目录中有txt文件,FTP重置是:

  • 我在大学已经学习了4周的JavaScript,两周前在我自己的时间里开始学习Java。事实证明,它很有用,因为我们有一个项目,我们必须制定一个程序(这是我们为项目选择的)。 问题是,虽然我知道Java的大部分基础知识,但我对制作我们想要制作的程序知之甚少,我所有的其他团队成员甚至从未接触过Java,有些人甚至在课堂上与JavaScript作斗争。 对不起,顺便说一句,我只是想让人们了解我的来历。