无法在Jenkins管道中运行Shell脚本

我能够运行以下shell脚本,但无法从Jenkins管道代码运行。

node('buildnode') {

def value = "Myvalue"

def key = "Mykey"

sh '''

DATA=$(printf "%-50s \"$key\"" "$value")

echo "$DATA"

'''

}

++ printf '%-50s ' ''

+ DATA='

尝试过sh“”“

DATA=$(printf "%-50s \"$key\"" "$value")

echo "$DATA"

" " "

美元符号后的非法字符串体字符;解决方案:要么转义文字美元符号,"\$5"要么将值表达式括起来"${5}"

有人能帮我吗?

回答:

这应该工作。

node('buildnode') {

def value = "Myvalue"

def key = "Mykey"

sh """

DATA=\$(printf "%-50s \"${key}\" \"${value}\"")

echo "\$DATA"

"""

}

您还需要在调用下面的新subshel​​l时转义$ """ """

DATA=$(printf "%-50s \"${key}\" \"${value}\"")

以上是 无法在Jenkins管道中运行Shell脚本 的全部内容, 来源链接: utcz.com/qa/408141.html

回到顶部