如何在Jenkins下拉列表中显示目录名

如何在Jenkins下拉列表中显示目录名,jenkins,groovy,jenkins-plugins,Jenkins,Groovy,Jenkins Plugins,我希望显示目录名称而不是abs。使用Active choice被动参数插件在Jenkins下拉列表中Jenkins服务器的/tmp目录的路径 我用下面的代码显示了它。 但它在输出中随路径一起显示 Eg输出: /tmp/董事1 /tmp/董事会2 我需要输出为:没有目录的路径 目录1 目录2 主动选择被动参数插件的groovy脚本部分使用的代码 import groovy.io.FileType def list = [] def dir = new File("/tmp/") dir.eac

我希望显示目录名称而不是abs。使用Active choice被动参数插件在Jenkins下拉列表中Jenkins服务器的/tmp目录的路径

我用下面的代码显示了它。 但它在输出中随路径一起显示

Eg输出:

/tmp/董事1 /tmp/董事会2

我需要输出为:没有目录的路径

目录1 目录2

主动选择被动参数插件的groovy脚本部分使用的代码

import groovy.io.FileType

def list = []

def dir = new File("/tmp/")
dir.eachFileRecurse (FileType.FILES) { file ->
  list << file
}

list.each {
  println it.path 
}
给你:

使用目录而不是文件

如果不需要递归,只需使用eachFile而不是eachFileRecurse

编辑:根据OP的评论, 在上面的脚本中,使用return list而不是print list作为最后一个语句,以便在jenkins中显示列表。

给您:

使用目录而不是文件

如果不需要递归,只需使用eachFile而不是eachFileRecurse

编辑:根据OP的评论,
在上面的脚本中,使用return list而不是print list作为最后一个语句来显示jenkins中的列表。

您不能只使用println it.name使用println it.name与路径获得相同的输出您不能只使用println it.name使用println it.name与路径获得相同的输出使用两者,没有显示输出。在/tmp/文件夹下有3个目录。需要显示它们,并指出其路径。i、 e不作为/tmp/directory1,只作为输出中的directory1提供给您一个经过测试的代码段。它确实表明了这一点。您是如何测试的?在Jenkins-Active choice被动参数插件的groovy脚本部分使用了上述代码,没有任何更改。在Jenkins中使用之前,您可以在本地进行尝试以确保其工作正常?不知道Jenkins插件,但您可能希望使用返回列表而不是打印?使用这两种代码后,没有显示任何输出。在/tmp/文件夹下有3个目录。需要显示它们,并指出其路径。i、 e不作为/tmp/directory1,只作为输出中的directory1提供给您一个经过测试的代码段。它确实表明了这一点。您是如何测试的?在Jenkins-Active choice被动参数插件的groovy脚本部分使用了上述代码,没有任何更改。在Jenkins中使用之前,您可以在本地进行尝试以确保其正常工作?不知道Jenkins插件,但您可能希望使用返回列表而不是打印?
import static groovy.io.FileType.DIRECTORIES
def list = []
new File('/tmp').eachFileRecurse (DIRECTORIES) { file ->
  list << file.name
}
return list