使用 shell 列出目录并使用 groovy 进行迭代

问题描述 投票:0回答:1

有人可以帮忙提供解决方案吗?

我尝试使用 groovy 文件中的 shell 脚本列出某个位置(/root/var/)下的文件夹。 根据检索到的文件夹数量,我必须使用 groovy 中的 For 循环单独迭代文件夹名称(而不是文件夹内的文件)。

下面是我的 groovy 文件中的 shell 脚本。

def 文件夹位置 = "/root/var/*/" List l = sh(script: "ls -d ${folderlocation}", returnStdout: true).trim().split(' ')

for(l中的fldr){ 打印(l) }

我看到的 l 输出是绝对路径而不是文件夹名称。

例如:/root/var/ 包含 lib 作为子目录。

我看到 l 打印为 /root/var/lib/

我希望 l 仅包含 lib,而不是绝对路径或任何其他文件夹名称(如果有)。

有人可以帮助我吗。

list shell groovy directory
1个回答
0
投票

您可以使用“cd /root/var && ls -d ./*”。这将列出 /root/var 中的所有文件夹,不带前导路径。

© www.soinside.com 2019 - 2024. All rights reserved.