gpt4 book ai didi

jenkins - groovy 字符串插值可以嵌套吗?

转载 作者:行者123 更新时间:2023-12-03 22:00:15 30 4
gpt4 key购买 nike

我正在尝试在 Jenkins groovy shell 脚本中添加参数,然后想知道是否可以像这样嵌套使用 groovy 字符串插值。

node{

def A = 'C'
def B = 'D'
def CD = 'Value what I want'

sh "echo ${${A}${B}}"
}

那么我所期待的就是这样;
'Value what I want'

就像我一样;
sh "echo ${CD}"

但是它给出了一些错误,即在步骤 [...] 中找不到 $

不可能吗?

最佳答案

像这样?

import groovy.text.GStringTemplateEngine

// processes a string in "GString" format against the bindings
def postProcess(str, Map bindings) {
new GStringTemplateEngine().createTemplate(str).make(bindings).toString()
}

node{

def A = 'C'
def B = 'D'

def bindings = [
CD: 'Value what I want'
]

// so this builds the "template" echo ${CD}
def template = "echo \${${"${A}${B}"}}"​
// post-process to get: echo Value what I want
def command = postProcess(template, bindings)

sh command
}

关于jenkins - groovy 字符串插值可以嵌套吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45830294/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com